r195255 - When wrapping lazily generated builtins in an extern "C" context,

Enea Zaffanella zaffanella at cs.unipr.it
Wed Nov 20 12:29:41 PST 2013


On 11/20/2013 08:46 PM, Richard Smith wrote:
> I suspect this is not currently visible to any in-tree code. Perhaps 
> we could teach -ast-dump to dump this flag, and test it that way.

It seems that -ast-print is able to show the difference ... but I can 
not tell if this is only happening by chance (the status of the pretty 
printer is unclear to me):

$ cat a.cc
float test() {
   return __builtin_asinf(1.0);
}

Before the patch we were getting:
$ clang++ -cc1 -ast-print a.cc
float test() {
     return __builtin_asinf(1.);
}


extern "C" extern float __builtin_asinf(float) __attribute__((nothrow)) 
__attribute__((const))
$

After the patch, only function test() is printed out.

Enea.



More information about the cfe-commits mailing list