[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #6 from bkoz at gcc dot gnu dot org 2009-01-24 01:52 --- Mine. -- bkoz at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |bkoz at gcc dot gnu dot org |dot org | Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-01-24 01:52:15 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #7 from bkoz at gcc dot gnu dot org 2009-01-24 02:30 --- Please note there are no ABI baseline files checked in to the FSF GCC repository for darwin for this (or any) release on this (or any) architecture. Without these, there can be no automated ABI testing by the GCC community. Thus, there is no ABI to break for your release/target, and this bug is invalid. If this is something you'd like to see supported on your target in the future, please consider activating the make check-abi rule and checking in the ABI baseline files (baseline_symbols.txt) to the config/abi/post/[powerpc|i686]_darwin directories. There appears to be scripts/make_exports.pl that intends to generate the appropriate baseline files for darwin. It appears to be unused. Is this still in an experimental state? Now, to answer the stated question. On x86_64-linux-gnu, gcc-4.0.4 has the following stdio_sync_exports in baseline_symbols.txt: OBJECT:54:_ZTSN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEE@@GLIBCXX_3.4 OBJECT:54:_ZTSN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@@GLIBCXX_3.4 FUNC:_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE4fileEv@@GLIBCXX_3.4.2 FUNC:_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE4fileEv@@GLIBCXX_3.4.2 OBJECT:24:_ZTIN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEE@@GLIBCXX_3.4 OBJECT:24:_ZTIN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@@GLIBCXX_3.4 OBJECT:54:_ZTSN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEE@@GLIBCXX_3.4 OBJECT:54:_ZTSN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@@GLIBCXX_3.4 These match gcc-4.2.4. Analysis of prior baseline_symbols.txt files (from gcc-3.4.6) show similar exports for this class. So, 000252d2 T __gnu_cxx::stdio_sync_filebufchar, std::char_traitschar ::file() 0002530e T __gnu_cxx::stdio_sync_filebufwchar_t, std::char_traitswchar_t ::file() was exported from gcc-3.4.6 to gcc-4.2.4 inclusive, and remains exported. The remaining functions were not exported. For the record, later versions of gcc, starting with gcc-4.3.0, started exporting these stdio_sync_filebuf member functions in the GLIBCXX_3.4.10 namespace. This is not especially relevant to your question about gcc-4.0.0 to gcc-4.2.1 versioning. If darwin exported these additional member functions in gcc-4.0.0, then it did so in divergence with the linux baselines. Hope this helps. -- bkoz at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #8 from mrs at apple dot com 2009-01-24 04:18 --- First, you didn't test 4.0.0, so all your reasoning is invalid. Second, claiming no ABI breakage when there is abi breakage is silly. I guess if you have no customers with no software, with do previously deployed software and you don't care about abi breakage, you can get away with it. Unfortunately, this doesn't apply in our case. I'd rather you close this out as won't fix, if you can't be bothered to even actually check the abi of gcc-4.0.0 and compare it against 4.2.1, it is more honest. Closing it as invalid is wrong. :-( -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #5 from rguenth at gcc dot gnu dot org 2008-05-07 19:27 --- Please confirm with current 4.2 branch head. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Keywords||ABI http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-05-07 00:12 --- Was this ever supposed to be used external from libstdc++? It is in the __gnu_cxx namespace. I don't think they are exported at all under GNU/Linux with elf exports. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #2 from pinskia at gcc dot gnu dot org 2008-05-07 00:18 --- # __gnu_cxx::stdio_sync_filebuf _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE; _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4fileEv; _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4syncEv; _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE[5-9CD]*; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #3 from mrs at apple dot com 2008-05-07 02:40 --- Adding: +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE4syncEv; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE5uflowEv; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE6xsgetnEPci; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE6xsputnEPKci; + _ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE8overflowEi; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE9pbackfailEi; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE9underflowEv; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEC1EP7__sFILE; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEC2EP7__sFILE; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED0Ev; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED1Ev; +_ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEED2Ev; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE4syncEv; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE5uflowEv; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE6xsgetnEPwi; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE6xsputnEPKwi; + _ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE8overflowEi; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE9pbackfailEi; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE9underflowEv; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEC1EP7__sFILE; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEC2EP7__sFILE; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED0Ev; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED1Ev; +_ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEED2Ev; back to libstdc++-v3/config/abi/pre/gnu.ver seems to make it better. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164
[Bug libstdc++/36164] abi breakage, stdio_sync_filebuf routines missing
--- Comment #4 from mrs at apple dot com 2008-05-07 02:58 --- Thinking and supposing are bad substitutes for solid engineering. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36164