[cfe-dev] New C++0x feature support in Clang

John Bytheway jbytheway+llvm at gmail.com
Thu Feb 3 15:07:06 PST 2011


On 31/01/11 16:15, Douglas Gregor wrote:
> We *should* have enough C++0x support to handle GCC 4.3 and 4.4's
> headers. >= 4.5 headers will still cause problems due to their use of
> generalized initializer lists.

I still see plenty of errors including the gcc 4.4.5 headers (using llvm
and clang r124819).  Is there any option clang needs besides
-std=gnu++0x?  Are these errors worth reporting?

Here are a few extracts from one attempted compilation as examples:

/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/include/g++-v4/exception_ptr.h:143:13:
error: unknown type name 'type_info'
      const type_info*
            ^


/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/include/g++-v4/ext/string_conversions.h:40:60:
error: template parameter missing a default argument
  template<typename _TRet, typename _Ret = _TRet, typename _CharT,
                                                           ^


/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/include/g++-v4/bits/basic_string.h:2570:12:
error: no matching function for call to '__stoa'
  { return __gnu_cxx::__stoa(&std::strtol, "stol", __str.c_str(),
           ^~~~~~~~~~~~~~~~~


/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/include/g++-v4/tr1_impl/cmath:322:12:
error: use of undeclared identifier '__builtin_acoshf'
  { return __builtin_acoshf(__x); }
           ^


clang: SemaCXXCast.cpp:612: TryCastResult TryStaticCast(clang::Sema&,
clang::Expr*&, clang::QualType, bool, const clang::SourceRange&,
unsigned int&, clang::CastKind&, clang::CXXCastPath&): Assertion
`SrcType->getAs<EnumType>()->getDecl()->isScoped()' failed.


John Bytheway




More information about the cfe-dev mailing list