This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: add .cc files to libgcc.a
On 30 October 2012 00:30, Perry Smith wrote:
>
> On Oct 29, 2012, at 1:47 PM, Jonathan Wakely wrote:
>
>> It compiles fine with gcc if you put it in a file that ends in .cc or
>> .C or .cpp or any of the other extensions that tell gcc to run the
>> cc1plus compiler. Please read
>> http://gcc.gnu.org/onlinedocs/gcc/Invoking-G_002b_002b.html
>
> I didn't see this before... but I'm still not clear why the distinction is important to you.
I dunno, I just find it helps to be accurate and precise about what
you mean, especially if you're proposing changes to an important
project like GCC.
> cc1plus is needed. So, gcc can call cc1plus. What can't I use the term "g++" for that path? Isn't that how people think of it? How is the fact that gcc can call cc1plus really significantly important? We all know that gcc and g++ are just front ends.
Good, I'm glad you know that. Claiming your C++ code couldn't be
compiled by gcc implied otherwise.
It is significant, because if your changes were in libstdc++.so then
they could not be used when compiling C++ code with 'gcc' unless
linking to -lstdc++, which would be a change in behaviour and a
regression.
> Also, in my original implementation, the new code does get put into both libsupc++ and libstdc++. It appeared to me that libsupc++ is a proper subset of libstdc++. In fact, this link is where I got that idea from:
>
> http://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.what_is_libsupcxx
>
> Note also that __cxa_guard_* is in the libsupc++ and libstdc++ libraries as well (and not libgcc). Here is the nm output of the libraries after my additions:
Good, so it's in the right place, *not* in libstdc++.
If you had said you'd put it in libsupc++ not libstdc++ you could have
saved a lot of time, instead of claiming that putting it in the right
place was splitting hairs.