pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Installing clang alongside GCC on NetBSD 9



On Sun 08 Mar 2020 at 11:45:24 -0500, Jason Bacon wrote:
> With C++, it's complicated and I don't claim to understand all the issues in
> detail. C++ is still evolving rapidly and different major versions of GCC
> do not guarantee ABI compatibility or even API compatibility in all cases.

Interestingly, I recently read some proposal to clean up part of the C++
standard library, which (according to the author) had not been done so
far because ABI compatibility was to be preserved. This puzzled me,
since it directly contradicts what you say above (and which I had read
many times before).

https://cor3ntin.github.io/posts/abi/

"February 24, 2020
The Day The Standard Library Died

In Prague, the C++ committee took a series of polls on whether to break
ABI, and decided not to."

"You won't be able to use a symbol in a new version of a compiled library if you do any of the following:

    Add data member to an existing class
    Change template arguments, transform a function template to a non-template or vice versa, or make a template variadic
    Make something inline that previously wasn't
    Adding defaulted arguments to functions
    Add virtual functions

And many more thing, but these are usually the one encountered by the committee and the ones that tend to kill proposals on the spot."

I'm quite puzzled why the C++ committee is apparently working so hard
(and annoying people in the process) to preserve the ABI if gcc then
just breaks it willy-nilly.  There must be something more going on that
I'm not aware of.

-Olaf.
-- 
Olaf 'Rhialto' Seibert -- rhialto at falu dot nl
___  Anyone who is capable of getting themselves made President should on
\X/  no account be allowed to do the job.       --Douglas Adams, "THGTTG"

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index