3

私は icpc (非オプション) を使用しており、-std=c++0x でコンパイルしているので、ランバを使用できます。

ただし、そうすると、一方がサポートしていて他方がサポートしていない機能を備えた gcc stdlib で havok が作成されます。

定義してみました

__GXX_EXPERIMENTAL_CXX0X__

しかし、それは役に立ちませんでした。

したがって、理想的には、C++03 stdlib で c++0x 言語機能を使用できるようにすることを求めています。

gcc 4.6

ICC 12.1]

エラーの編集例:

/usr/include/c++/4.6.2/type_traits(74): error: identifier "constexpr" is undefined
    static constexpr _Tp                  value = __v;
           ^

/usr/include/c++/4.6.2/type_traits(74): error: expected a ";"
        static constexpr _Tp                  value = __v;
                                          ^

/usr/include/c++/4.6.2/type_traits(75): error: member "std::integral_constant<_Tp,      __v>::_Tp" is not a type name
    typedef _Tp                           value_type;
            ^

/usr/include/c++/4.6.2/type_traits(76): error: member "std::integral_constant<_Tp,     __v>::_Tp" is not a type name
        typedef integral_constant<_Tp, __v>   type;
                              ^

 /usr/include/c++/4.6.2/type_traits(77): error: identifier "constexpr" is undefined  
         constexpr operator value_type() { return value; }
         ^

 /usr/include/c++/4.6.2/type_traits(87): error: identifier "constexpr" is undefined
      constexpr _Tp integral_constant<_Tp, __v>::value;
4

2 に答える 2

0

icpcそのような状況でのみ警告します。これに注意を払わないでください。すべてがコンパイルされます。

于 2012-02-14T19:49:16.830 に答える