LWN.net Logo

LSB 2.0 and C++

LSB 2.0 and C++

Posted Aug 8, 2004 0:43 UTC (Sun) by garloff (subscriber, #319)
Parent article: LSB 2.0 and C++

Reading the comments, it seems like some things have not been said:

  • LSB does specify existing practice; it's not about directing distributions what they need to do in future. So putting C++ ABI v6 in there is no option; you can't know if anyone will implement it. This will likely be different in a year from now, and we'll have a new LSB revision then.
  • While it may be true that gcc-3.3 has bugs that make it deviate from the v5 ABI, it's very very close. The deviation can be considered a bug and if there's need, the distributors currently shipping gcc-3.3. distros (and there are a lot) will likely fix that.
  • Most people developing LSB compliant software will expect that the software continues to run, also on systems that conform to newer versions of LSB; so a warning note for the C++ specification may make sense.
  • By the same reasons, it may make sense to omit C++ from the submission for the ISO standard.
  • Many of the libstdc++ improvements can be done without breaking the ABI; there's a CVS branch for gcc, which has most of them for a 3.3 gcc.
  • gcc-3.0 was the first version to promise a stable C++ ABI -- not for the libstdc++ (which was known to still be flux), but for things that the compiler does, like name mangling and structure layout. It failed because bugs were found. Some people in the discussion seem to imply that v6 will be the final, last, bugfree one. I doubt it. I hope the gcc developers work hard on keeping the C++ ABI stable finally, but I don't believe we're there yet, also not with with gcc-3.4. Hopefully, the frequency of changes decreased ...


(Log in to post comments)

LSB 2.0 and C++

Posted Aug 8, 2004 16:30 UTC (Sun) by rfunk (subscriber, #4054) [Link]

  • LSB does specify existing practice; it's not about directing distributions what they need to do in future. So putting C++ ABI v6 in there is no option; you can't know if anyone will implement it. This will likely be different in a year from now, and we'll have a new LSB revision then.
  • While it may be true that gcc-3.3 has bugs that make it deviate from the v5 ABI, it's very very close. The deviation can be considered a bug and if there's need, the distributors currently shipping gcc-3.3. distros (and there are a lot) will likely fix that.

Once again, these two are contradictory. Either LSB specifies existing practice or it doesn't. If it does, then requiring everyone to patch their systems to be compliant is not an option.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds