tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Incorrect demangling



I see this behaviour on 4.0.1 i386, 5.1 i386, 1.4T sparc, and
4.0_STABLE i386.  I'm curious how widespread it is.  (In particular,
I'd very much like to know if others on such systems don't see it.)

% cat z.c
extern void foo__prep(void);
int main(void);
int main(void)
{
 foo__prep();
 return(0);
}
% cc -o z z.c
/var/tmp//ccKokvnE.o: In function `main':
z.c:(.text+0x12): undefined reference to `foo(long double *,...)( *)'
% 

The issue, of course, is that it should be reporting foo__prep, not a
bizarre prototypeish thing, in the complaint.  This looks to me like a
misfire of C++ demangling, but that doesn't really help all that much,
especially since there's no C++ involved.

/~\ The ASCII                             Mouse
\ / Ribbon Campaign
 X  Against HTML                mouse%rodents-montreal.org@localhost
/ \ Email!           7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index