Re: C++ conversion status update

Yao Qi
2015-12-14T14:40:22Z

Pedro Alves <palves@redhat.com> writes:

> Good news, we've reached a significant milestone on the C++ conversion -- on
> a few important hosts, GDB now builds cleanly as a C++ program with no
> hacks. These are at least:
>
> - Aarch64 GNU/Linux
> - ARM GNU/Linux
> - x86 GNU/Linux
> - x86_64 GNU/Linux
> - x86_64 Mingw-w64
>
> In addition, the testsuite shows no regressions in C++ mode, compared to C mode.
>

We need a wiki page to track these hosts on which we enabled C++ build.
Like this gcc wiki page, https://gcc.gnu.org/wiki/CppBuildStatus or we
can track them in existing https://sourceware.org/gdb/wiki/cxx-conversion
wiki page.

> The plan I propose next is to default to building in C++ mode on hosts
> that are known to build cleanly in C++ mode. Or rather, change the default
> to be C++ mode, _except_ for hosts/ports that haven't been converted
> yet.

I prefer the latter.

> Then, as ports get converted, one by one they'll be removed from
> the "can't do C++ yet" list. That gives us a defined stopping point -- when
> the list becomes empty, and after a reasonable period, we can decide to remove
> support for building in C mode and start making use of C++ features.

That sounds good to me.

>
> The question I have is which hosts (Architecture + OS combination) people
> care about that still need C++ conversion work and thus should be on
> that list?

How about all linux and mingw hosts? assuming that xtensa can be
converted.

>
> This is where anyone can help!
>
> I've created the "users/palves/cxx-conversion" branch (on sourceware.org)
> where I committed a patch that implements the list idea. I filled in
> a set of hosts that I _thought_ wouldn't build, but I don't really know
> for sure.
>
> So I'd like to invite people to try to build master on their favorite
> host with --enable-build-with-cxx, and report back the result.

We didn't hear anything on this yet, but we can't wait for it forever.
I'd like to turn on C++ build for linux and mingw hosts in default after
the 7.11 release branch is created.

--
Yao (齐尧)