C++11
Stephan Bergmann
sbergman at redhat.com
Mon Sep 15 05:23:24 PDT 2014
On 09/15/2014 12:20 PM, Jan-Marek Glogowski wrote:
> Well - we'll release our 12.04 based rollout this year (I know we're
> late ;-) and it'll be at least supported for the next 2-3 years. This
> change means we won't be able to do any LO updates after 4.3, not even
> thinking of building a LO version for our old 10.04 based release, which
> we'll support at least for another year.
That's certainly unfortunate.
> Current master still builds on 12.04 (except for collada), so it seems
> all used C++11 features are also supported by gcc 4.6. There is a
> unsupported gcc-4.7 in universe (4.7.0-0ubuntu4) with a newer version
> (4.7.2-0ubuntu3) in precise-updates,
Note that the current master does not really make unconditional use of
any C++11 features yet, except for the one commit introducing a scoped
enum, which /is/ already supported by GCC 4.6.
Also note that "our configure.ac currently still allows some GCC < 4.7,
and some tinderboxes still make use of that," so at least as long as we
do not deliberately use an features requiring GCC 4.7 you could still be
happy with a GCC 4.6 toolchain.
Looking at least at the core language features at
<http://wiki.apache.org/stdcxx/C++0xCompilerSupport>, about the only
relevant feature that requires GCC 4.7 rather than 4.6 (and is also
supported by MSVC 2012) is delegating constructors. Not sure how urgent
the demand is to use those, but if that should turn out to be the only
issue, there might be a way to address that. (The other relevant
feature is override/final, but we already conditionalize that with
SAL_OVERRIDE/SAL_FINAL, so could probably continue to do so for now.)
No idea though what standard library features we would like to use that
require GCC 4.7's libstdc++.
From the LO codebase standpoint, the preferred solution would of course
be if you could upgrade your toolchain to GCC 4.7. (Depending on our
standard library demands and the actual differences between GCC 4.6 and
4.7 libstdc++, that might or might not imply also upgrading libstdc++ in
your runtime environment, or using technology similar to RHEL's
Developer Tools.)
Stephan
More information about the LibreOffice
mailing list