This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: lint kills _Noreturn

On 5/29/2016 12:56 PM, Andy Moreton wrote:
On Sun 29 May 2016, Ken Brown wrote:

If lint is defined, then /usr/include/sys/cdefs.h defines _Noreturn as a macro
that expands to nothing.  Is this intentional?

Simple test case:

$ cat test.h
#define lint 1
#include <sys/cdefs.h>
_Noreturn void foo (void);

$ gcc -E test.h | grep foo
         void foo (void);


A traditional lint program may not support the new C11 keywords, but
will define the 'lint' symbol. See, e.g.

But in the present context (see my second message), we're redefining C11 keywords even though __STDC_VERSION__ >= 201112L.

Surely the real problem here is a program which is not a lint executable
defining 'lint' ?

The program is emacs built from a git checkout of the master branch. By default the configure option --enable-gcc-checking is used, and this causes lint to be defined in src/config.h. It doesn't seem to be a problem on platforms other than Cygwin; or at least it hasn't been reported.


Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]