Hello,

I am the maintainer of Wt [1], a C++ web development library (think of Qt
or Gtk+ for the web) and web server.

My upstream [2] sent me a mail asking about mixing C++03 and C++11. My
understanding is it is not possible for a variety of reasons, unless all
players take great care (see [3], for instance).

The specific case upstream asked about is Boost.Signals2, which provides a
different and ABI-incompatible implementation [4] depending on whether
Boost was compiled as C++03 or C++11. I expect users and Wt to use more and
more C++11, to the point where Wt may not even be compilable as C++03.
Given that Wt depends on Boost, I can foresee a problem:

- Application may be C++11 or C++03, depending on what the user is doing
- Wt would be C++11-only
- Boost would be compiled as C++03 in Debian
- Wt (C++11) would depend on Boost (C++03), which but this mix is broken

I'm talking about Wt + Boost in this e-mail but this will arise as other
combinations for other packagers: log4cpp, Xerces, SOCI, ACE (which I
co-maintain), Gtkmm, ZeroC ICE, POCO, etc

I have googled but so far I have found no clear conclusion about this for
Debian. What are we going to do with C++11? Are we goint to provide C++03
and C++11 using multiarch (is that even possible?) ? Everything C++11?
Fingers crossed?

E. g Microsoft took a very pragmatic decision: C++11 is enabled by default
and it is not possible to disable it.

[1] Wt - http://www.webtoolkit.eu
[2] EmWeb - http://www.emweb.be
[3] Thiago Macieira: C++11 use in Qt5: Challanges and Solutions -
http://www.youtube.com/watch?v=olSSGA_nD1Q
[4] http://lists.boost.org/Archives/boost/2013/05/203762.php

 <http://www.youtube.com/watch?v=olSSGA_nD1Q>--
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)
  • C++11 Pau Garcia i Quiles

Reply via email to