[LLVMbugs] [Bug 13081] New: libc++ fails to build with disabled c++0x

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Jun 11 11:19:00 PDT 2012


http://llvm.org/bugs/show_bug.cgi?id=13081

             Bug #: 13081
           Summary: libc++ fails to build with disabled c++0x
           Product: libc++
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
        AssignedTo: hhinnant at apple.com
        ReportedBy: annulen at yandex.ru
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


When compiling libc++ using clang, CMake build system and
LIBCXX_ENABLE_CXX0X=OFF compilation fails:

cd /home/kostya/src/git/libcxx/build-noc++11/lib && /usr/local/bin/clang++  
-Dcxx_EXPORTS -DNDEBUG -fPIC -I/home/kostya/src/git/libcxx/include   
-nostdinc++ -Wall -W -Wno-unused-parameter -Wwrite-strings -Wno-long-long
-pedantic -fPIC -DLIBCXXRT -I/usr/local/src/libcxx/lib -o
CMakeFiles/cxx.dir/__/src/future.cpp.o -c
/home/kostya/src/git/libcxx/src/future.cpp
/home/kostya/src/git/libcxx/src/future.cpp:13:1: warning: inline namespaces are
a C++11 feature [-Wc++11-extensions]
_LIBCPP_BEGIN_NAMESPACE_STD
^
/home/kostya/src/git/libcxx/include/__config:266:52: note: expanded from macro
'_LIBCPP_BEGIN_NAMESPACE_STD'
#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {inline namespace
_LIBCPP_NAMESPACE {
                                                   ^
/home/kostya/src/git/libcxx/src/future.cpp:32:13: error: no matching conversion
for static_cast from 'int' to 'std::__1::future_errc'
    switch (static_cast<future_errc>(ev))
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/kostya/src/git/libcxx/include/future:379:29: note: candidate constructor
(the implicit copy constructor) not viable: no known conversion from 'int' to
      'const std::__1::future_errc' for 1st argument;
_LIBCPP_DECLARE_STRONG_ENUM(future_errc)
                            ^
/home/kostya/src/git/libcxx/include/__config:404:63: note: expanded from macro
'_LIBCPP_DECLARE_STRONG_ENUM'
#define _LIBCPP_DECLARE_STRONG_ENUM(x) struct _LIBCPP_VISIBLE x { enum _
                                                              ^
/home/kostya/src/git/libcxx/include/future:386:36: note: candidate constructor
not viable: no known conversion from 'int' to 'std::__1::future_errc::_' for
1st
      argument;
_LIBCPP_DECLARE_STRONG_ENUM_EPILOG(future_errc)
                                   ^
/home/kostya/src/git/libcxx/include/__config:407:27: note: expanded from macro
'_LIBCPP_DECLARE_STRONG_ENUM_EPILOG'
    _LIBCPP_ALWAYS_INLINE x(_ __v) : __v_(__v) {} \
                          ^
1 warning and 1 error generated.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list