[again as plain text, sorry, with edits]

I know gccgo is actually C++.
But why was no-rtti specified? Maybe that is for the other code, the C code?




But I see:

 > and using -fno-rtti saves some space in the generated compiler.

 

Is it worth it?

I guess you could configure with and without -fno-rtti + #include 
<unordered_hashmap> and use

the combination that works? Kind of you said that, but alternatively, use 
unordered_hashmap either way,

but only -fno-rtti if it works? I do realize though there is another factor, it 
might be

interesting to use just map, for older compilers/libraries, since unordered is 
"new".



 
Thank you, sorry, I'm in a rush right now,
 - Jay
 





> From: i...@google.com
> To: jay.kr...@cornell.edu
> CC: g...@integrable-solutions.net; jwakely....@gmail.com; gcc@gcc.gnu.org
> Subject: Re: -fno-rtti in configure.ac breaks building go? (older g++, 
> -disable-bootstrap)
> Date: Mon, 21 May 2012 06:48:08 -0700
> 
> Jay K <jay.kr...@cornell.edu> writes:
> 
> >> --enable-stage1-languages=go. (Mail to the OP is bouncing for me, by
> >> the way.)
> >
> > I don't know why.
> > I'm getting them, at least via the list.
> 
> For every e-mail I send to jay.kr...@cornell.edu, I'm getting a bounce
> from cashub03.exchange.cornell.edu saying
> 
> ----- The following addresses had permanent fatal errors -----
> jay.kr...@gmail.com
> (reason: 550 5.7.1 Unauthenticated email is not accepted from this domain. 
> r15si1037948qct.2)
> (expanded from: <j...@mail.cornell.edu>)
> 
> I would send you more details off-list but you probably wouldn't get
> them.
> 
> 
> > So I guess there is nothing to see here..move along..but..why the use of 
> > -fno-rtti?
> > It seems like a guess of "more work for less good"?
> 
> GCC does not use RTTI information, and using -fno-rtti saves some space
> in the generated compiler.
> 
> 
> > I can see maybe the opposite though.
> > Maybe the point is to avoid poor rtti implementations in old gcc bootstrap??
> > Or maybe the point was to compile C, really C code, with g++, and turn off 
> > "gratituitous"
> > C++ features that the code "doesn't even come near" (i.e. the bulk of gcc 
> > really is C
> > that is compatible with gcc, vs. the go frontend that is currently a rare 
> > case of "actual C++".
> > If that's the rationale, again, maybe the lines should just be removed. I 
> > understand this is
> > much to do about very little.
> 
> No, that's not it. The Go frontend is actual C++, but it doesn't use
> RTTI either. What you are running into is a bug in the GCC 4.0
> implementation of -fno-rtti.
> 
> 
> > I don't want to change a header and have make go through and build the 
> > compiler multiple times.
> > I have enough problems with incrementality building way too much..that I 
> > should look into..
> 
> The correct fix is the one I alluded to earlier: change the mainline
> gcc/configure.ac to test whether <tr1/unordered_map> works correctly
> when using -fno-rtti. That would detect the buggy GCC 4.0
> implementation, and avoid using <tr1/unordered_map> in that case.
> 
> Ian                                     

Reply via email to