This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: namespace namespace


Dave Korn wrote:
> Andrew Haley wrote:
>> Dave Korn wrote:
>>> Andrew Haley wrote:
>>>
>>>> This is an ABI change.  However, the ABI was almost completely broken
>>>> anyway.
>>>   Tangentially-related: Would it ever be possible to change the use of periods
>>> as separators in java mangled names too, or is that too deeply entrenched or
>>> part of a standard?
>> I suppose it could be done.  Is there some big problem with periods that
>> I don't know about?
>>
>> For example, java.lang.Object.class is mangled as _ZN4java4lang6Object6class$E.
> 
>   The kind of symbols I'm talking about are those with real actual periods in
> them, things I've seen in libjava, such as these:
> 
> gnu/.libs/classpath.o:
> 
> 00000030 r _java.io.IOException_ref.1567
> 00000034 r _java.io.IOException_ref.3036
> 0000002c r _java.lang.Exception_ref.1841

OK, I could fix those, but they're internal anyway.

> or these (from unidentified .o files):
> 
> 000139c0 t
> __ZN3gnu5javax3net3ssl8provider11CipherSuiteC1EPNS3_15CipherAlgorithmEPNS3_20KeyExchangeAlgorithmEPNS3_18SignatureAlgorithmEPNS3_12MacAlgorithmEiiiPN4java4lang6StringE.clone.1

All this .clone stuff is to do with template instantiation in the C++ compiler.

>   Like I said I've seen these mysterious symbols with literal periods in them,
> but I don't know what they actually are.  On closer inspection while writing
> this mail, I suddenly notice that they all appear to be local symbols; if this
> is always the case, then there's no problem at all because we'll never want to
> export them from a DLL.  And noticing the '.clone.' in there makes me wonder
> if this is in fact an entirely C++ issue and not Java at all?  (In which case
> sorry for bothering you with something that's not your department!)

Blame C++, that's what I say.

Andrew.


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