On Feb 3, 2005, at 8:55 PM, Marcin Dalecki wrote:
I have found a serious bug in the darwin compiler port, which does
get unnoticed
due to linker errors. The problem is that there are two different
lookup_name() functions.
One is for C++ found in name-lookup[ch] and declared as:
extern tree lookup_name (tree, int);
and one if doe C and declared as:
extern tree lookup_name (tree);
Thus config/darwin-c.c, which is calling it inside
darwin_pragma_unused() will
link fine but call the wrong function with improper parameters when
implementing
#pragma unused. This is something that can't work properly.
Very likely the intention was to implement the pragma only for C.
Yes this is a bug, could you file a bug.
Most likely the problem is that there is no testcase for #pragma unused
for C++ (for darwin obviously) in the testsuite.