[LLVMbugs] [Bug 9804] New: regression: clang no longer parses c++ on linux

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Apr 27 21:46:34 PDT 2011


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

           Summary: regression: clang no longer parses c++ on linux
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: nicholas at mxc.ca
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


Clang no longer parses libstdc++ headers. Reduction:

  class Foo {
    static const bool __is_signed;
  };

This breaks all standard C++ headers (ie., #include <map> fails) on Linux. The
error is:

  x.cc:2:21: error: expected member name or ';' after declaration specifiers
    static const bool __is_signed;
    ~~~~~~~~~~~~~~~~~ ^
  1 error generated.

which shows up because ext/numeric_traits.h does:

      static const bool __is_signed = __glibcxx_signed(_Value);

This is a recent regression. Of course, renaming it __foo makes it work.

-- 
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