GCC 4.8 released

GCC 4.8 has been released. C++-related improvements include the following highlights.

Language improvements:

  • G++ now implements the C++11 thread_local keyword...
  • G++ now implements the C++11 attribute syntax, e.g.
      [[noreturn]] void f();
    and also the alignment specifier, e.g.
      alignas(double) int i;
  • G++ now implements C++11 inheriting constructors, e.g.
      struct A { A(int); };
      struct B: A { using A::A; }; // defines B::B(int)
      B b(42); // OK
  • G++ now supports a -std=c++1y option for experimentation with features proposed for the next revision of the standard, expected around 2017. Currently the only difference from -std=c++11 is support for return type deduction in normal functions, as proposed in N3386.
  • The G++ namespace association extension, __attribute ((strong)), has been deprecated. Inline namespaces should be used instead.

Standard library improvements:

Improved experimental support for the new ISO C++ standard, C++11, including:

  • forward_list meets the allocator-aware container requirements;
  • this_thread::sleep_for(), this_thread::sleep_until() and this_thread::yield() are defined without requiring the configure option --enable-libstdcxx-time;
  • SSE optimized normal_distribution and simd_fast_mersenne_twister_engine.
  • Use of hardware RNG instruction for random_device on new x86 processors (requires the assembler to support the instruction.)

Add a Comment

Comments are closed.

Comments (0)

There are currently no comments on this entry.