C Plus Plus - Compatibility - Exported Templates

Exported Templates

One particular point of contention is the export keyword, intended to allow template definitions to be separated from their declarations. The first widely available compiler to implement export was Comeau C/C++, in early 2003 (five years after the release of the standard); in 2004, the beta compiler of Borland C++ Builder X was also released with export. Both of these compilers are based on the EDG C++ front end. Other compilers such as GCC do not support it at all. Beginning ANSI C++ by Ivor Horton provides example code with the keyword that will not compile in most compilers, without reference to this problem. Herb Sutter, former convener of the C++ standards committee, recommended that export be removed from future versions of the C++ standard. During the March 2010 ISO C++ standards meeting, the C++ standards committee voted to remove exported templates entirely from C++11, but reserve the keyword for future use.

Read more about this topic:  C Plus Plus, Compatibility