On 10.10.2017 08:45, Mathieu Malaterre wrote: > Dear all, > > Since the GCC 6 release [1], the default mode for C++ is now > -std=gnu++14 instead of -std=gnu++98. What this means is that upon > (re)compilation a library written for c++98 will be recompiled using a > different c++ standard (c++14 in this case), unless of course the > upstream package explicitly set the -std= flags with the appropriate > c++ version. > > The ISO committee generally describe the change in between different > standards [2] and in some case, one can find examples of subtle change > in behaviors [3] and [4]. > > With this mind I'd like to make mandatory the -std=c++XY flags when > compiling either a c++ library or a stand-alone c++ program: > > 1. Either upstream define the explicit -std=c++XY flags by mean of its > build system, > 2. Or the package maintainers needs to explicit change the CXXFLAGS to > pass the appropriate version of the c++ standard. In which case this > should be documented in the README.Debian file. > 3. As a fallback, dh should initialize the CXXFLAGS with -std=gnu++98 > > If there is a consensus on the following change, I'll go ahead and > also file a bug for lintian to scan the compilation logs in search for > missing -std=c++ expression when g++ command line are issued.
I don't think this is a good idea, and I'm still trying to understand what problem you are trying to solve. It took a while until GCC had stable c++11 support, and now you want to fallback to a 20 year old standard by default? It would be better to spend some time to prepare for -std=gnu++17 instead ;) Matthias