#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(void)
{
int fd;
fd = open("abc.txt", O_RDONLY);
if (fd < 0)
{
exit(EXIT_FAILURE);
}
printf("fd %d\n", fd);
close(fd);
exit(EXIT_SUCCESS);
}
Now I build it:
$ cc -errwarn=%all -o ~/tmp/aa ~/tmp/a.c
warning: bad message tag: /export/home/rmashak/tmp/a.call
$ cc -V
cc: Sun C 5.12 SunOS_i386 2011/11/16
It does execute fine, but what's the warning all about?
I have insufficient reputation to add a comment... This does look like a compiler bug with the parser. Compiling with later version of cc does not produce this error.
In your output cc appears to have presented the source filename concatenated with the remainder of '-errwarn' tag 'all', odd!