On Jun 25, 2010, at 3:49 AM, "pluto at agmk dot net" <gcc-bugzi...@gcc.gnu.org > wrote:

hi,

the latest llvm/clang++ reports an error during parsing <tr1/tuple>
included from <tr1/functional>:

Both of these are c++0x only headers and really are only supported when compiling in c++0x mode.



In file included from t00.cpp:1:
In file included from /usr/include/c++/4.5.0/tr1/functional:39:
/usr/include/c++/4.5.0/tr1/tuple:68:30: error: variadic templates are only
allowed in C++0x
 template<int _Idx, typename... _Elements>

afaics there's no #ifdef __GXX_EXPERIMENTAL... guards but...

http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt01ch01.html#manual.intro.status.standard.200x

(...)
In this implementation -std=gnu++0x or -std=c++0x flags must be used
to enable language and library features. The pre-defined symbol
__GXX_EXPERIMENTAL_CXX0X__ is used to check for the presence of
the required flag.
(...)


--
          Summary: missed GXX_EXPERIMENTAL guards in <tr1/tuple>?
          Product: gcc
          Version: 4.5.1
           Status: UNCONFIRMED
         Severity: normal
         Priority: P3
        Component: libstdc++
       AssignedTo: unassigned at gcc dot gnu dot org
       ReportedBy: pluto at agmk dot net
 GCC host triplet: x86_64-gnu-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44663

Reply via email to