How cpp deal with #abi(n32) ?

David Daney ddaney@caviumnetworks.com
Mon Nov 17 18:20:00 GMT 2008


Pan ruochen wrote:
> Hi All,
> 
> There is a header file in my project:
> 
[...]
> #if #abi(n32) || #abi(n64) || #abi(64) || #abi(eabi)
[...]
> 
> I can't find any explaination for the syntax '#abi(n32)' in gcc
> manual. But gcc can still process this header file and takes the #else
> branch during compilation.
> So, how gcc deal with this header file?

Those are preprocessor assertions:

http://gcc.gnu.org/onlinedocs/gcc-4.3.2/cpp/Assertions.html

I don't believe that the #abi assertion is a built-in in any stock GCC 
version, so they are probably defined in some other header file in your 
program.

David Daney



More information about the Gcc-help mailing list