[haiku-development] Re: [haiku-development]

  • From: Niels Sascha Reedijk <niels.reedijk@xxxxxxxxx>
  • To: Haiku Development <haiku-development@xxxxxxxxxxxxx>
  • Date: Fri, 17 Dec 2021 14:40:15 +0000

Hi,

Apologies for not adding a topic.

On Fri, Dec 17, 2021 at 1:58 PM Mr. waddlesplash <waddlesplash@xxxxxxxxx> wrote:


On Fri, Dec 17, 2021 at 4:12 AM Adrien Destugues
<pulkomandy@xxxxxxxxxxxxx> wrote:
I am still not sure if this is a good idea. Having the classes behave
differently in C++98 and C++11 (or later) sounds like a nightmare to
document and use.

I would rather make the whole new APIs simply not available at all in
C++98. This makes things easier to understand. And no one should be
writing new apps in C++98 anyway, right?

+1.

I think we are on the same page with this, though I would add caveat
that there may be some cases where we want to extend the legacy C++98
kits with some specific features when it adds value. For me, adding
support for noexcept moves to BString is one of those examples.

The specific case for adding these compatibility constants is for the
BError class. Since this new addition to the API is not specific to
the network kit, I thought it might be good to live in libbe.so. But
it may be too early.

It can be:
1. Stay in libbe.so but be modern C++ only.
2. Stay in libbe.so in the BPrivate namespace as modern C++ only.
3. Move to libnetservices2.a for now
4. Move to libshared.a

N>

Other related posts: