C++ 14 is here, and its proceeding to publication this year. On Aug 18, C++ 14 was formally ratified. We had one C++ Standard meeting since my last blog post for Issaquah Standard meeting , and that was in Rapperswil, Switzerland in June 16-21. We were there several years ago, and it is always nice to be in among the pristine lakes of the Switzerland Alps. Jens Weller, who runs Meeting C++ has described a few of my recent talks on C++14 at C++Now (as well as previously at ADC++ 2014) as well as ongoing video interviews on... [More]
The C++11 standard generalizes the concept of constant expressions and introduces a new keyword constexpr as a declaration specifier. A constant expression is an expression that can be evaluated at compile time by the compiler. The major benefits of this feature are as follows:
Improves type safety and portability of code that requires compile-time evaluation Improves support for systems programming, library building, and generic programming Improves the usability of Standard Library components. Library functions that can be evaluated at... [More]
The origin of Type Traits can be traced back to the TR1 and boost libraries. However, the T ype Traits feature is formally introduced into the C++ language in the C++11 standard library. As its name suggests, Type Traits exposes different characteristics of types, or simply the “type of type”. In many C++ programming practices, especially these in template metaprogramming, developers may find it difficult to build a template work for all types without knowing the characteristics of a type. That’s the key reason for... [More]
The XL C/C++ for AIX Fix Pack 19 (August 2014 PTFs) for 11.1 are now available at the following links and on Fix Central: XL C /C+ + fo r AI X Fi x Pa c k 19 (August 2 014 PTF ) fo r 11 . 1 Fix lis t fo r XL C/C + + f o r A I X XL C fo r AI X Fi x Pa c k 19 (August 2 014 PTF ) fo r 11 . 1 Fix lis t fo r XL C f o r A I X ... [More]
Note: This article was originally written in Chinese by Xiao Feng Guan/China/IBM. I translated this article into English. If you have any comments, please feel free to contact the original author or me. In C++11, with the introduction of rvalue reference, the performance of the std::string class has been improved greatly. Besides, the std::string class has included many new APIs, including the stoi / stol / sto member functions ,as well as the std::to_string global function. These two kinds of functions are very useful in formatted... [More]
In IBM XL C/C++ for Linux, V13.1, we support a vector built-in function vec_gbb that can perform a gather-bits-by-bytes operation on the input. NOTE: This built-in function is valid only when -qarch is set to target POWER8™ processors. Syntax d=vec_gbb(a) The following table describes the types of the function returned value " d" and the argument " a". d a The same type as the argument a vector unsigned long long vector signed long long Result value: For example, let x(i) (0 <= i < 8) denote the byte... [More]
Authors: Garfee Guan, Sumi Chen Standard C++14 makes C++11 more complete as C++11 has a lot of imperfections. C++14 not only amends C++11 but also proposes many new features, among which the most eye-catching one is the supplements to lambda-expressions. Lambda-expression is the most interesting feature in C++11 that challenges the long-used way of defining functions. C++14 proposes two major supplements to this famous feature. The first supplement is called “generalized lambda-capture” that comes from proposals N3610 and... [More]
For releases prior to C/C++ for AIX/Linux, V13.1, you can install only one product version to the default location. In this version of C/C++ for AIX/Linux compiler, multiple versions of compilers can coexist in the default installation location. When you install the C/C++ V13.1 compiler, your existing V12.1 compiler will not get uninstalled. This was achieved by differentiating the installation fileset names form those of the previous version, including the version, release and modification level (V.R.M) in the name, and installing to new... [More]
The XL C/C++ for BlueGene/Q Fix Pack 9 (August 2014 Update) for 12.1 is now available at the following links and on Fix Central: XL C/C++ for BlueGene/Q Fix Pack 9 (August 2014 Update) for 1 2 .1 Fix list for XL C/C++ for BlueGene/Q Can't find the updates for your compiler? Check out our C/C++ compiler latest update page here .
The XL C/C++ for AIX Fix Pack 9 (July 2014 PTF) for 12.1 is now available at the following links and on Fix Central: X L C f o r A I X F i x P a c k 9 (July 2 0 1 4 P T F ) f o r 1 2 . 1 F i x l i s t f o r X L C f o r A I X X L C / C + + f o r A I X F i x P a c k 9 (July 2 0 1 4 P T F ) f o... [More]
Tired of maintaining symbol export lists for your shared libraries? The XL C/C++ V13.1 compiler introduces a new feature to control symbol visibility via in-source #pragma statements, or compile option. Instead of manually creating and editing an export symbol list with the -qexpfile option or CreateExportList tool, simply add an __attribute__((visibility(" <value> "))) pragma to your function declaration to control the symbol visibility. On AIX, the symbol visibility setting is now kept in an internal XCOFF... [More]
We're happy to announce the release of the XL C/C++ for AIX, V13.1 and XL C/C++ for Linux, V13.1 compilers! The V13.1 release delivers POWER8 exploitation and new compiler and language features. IBM XL C/C++ for AIX 13.1 IBM XL C/C++ for AIX, V13.1 Announcement Letter IBM XL C/C++ for Linux 13.1 IBM XL C/C++ for Linux 13.1 Announcement Letter Questions/comments about the new releases? Contact... [More]
The XL C/C++ for AIX Fix Pack 18 (May 2014 PTFs) for 11.1 are now available at the following links and on Fix Central: XL C /C++ for AIX Fix Pac k 18 (May 2 014 PTF) for 11. 1 Fix list for XL C/C+ + fo r AI X XL C for AIX Fix Pac k 18 (May 2 014 PTF) for 11. 1 Fix list for XL C fo r AI X Can't find the updates for your compiler?... [More]
The XL C/C++ for Linux Fix Pack 7 (February 2014 Update) for 12.1 is now available at the following links and on Fix Central: XL C /C++ for Lin ux F ix P ack 7 (May 2014 Upd ate) for 12. 1 Fix list for XL C/C+ + fo r Li nu x Run time for XL C/C+ + fo r Li nux Fix Pack 7 (May 2014 Up date ) fo r 12 . 1 Fix ... [More]
The XL C/C++ for BlueGene/Q Fix Pack 8 (May 2014 Update) for 12.1 is now available at the following links and on Fix Central: XL C/C++ for BlueGene/Q Fix Pack 8 (May 2014 Update) for 1 2 .1 Fix list for XL C/C++ for BlueGene/Q Can't find the updates for your compiler? Check out our C/C++ compiler latest update page here .