[LLVMbugs] [Bug 6907] New: several versions of libstdc++ confuse #include_next

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Apr 23 13:12:00 PDT 2010


           Summary: several versions of libstdc++ confuse #include_next
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: marc.glisse at normalesup.org
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


I am using a precompiled version of 2.7 RC2.

I have several versions of the libstdc++ headers installed
(/usr/include/c++/4.* for a number of values of *), and all these directories
get appended in the include search path. Now when I #include <fenv.h>, it finds
the one from 4.4, which contains #include_next <fenv.h>, expecting it to be the
glibc one from /usr/include. However, clang takes the one from 4.3, which uses
the same macro guard and thus appears empty.

I suppose I can work around it with -nostdinc and appropriate -isystem. It
seems like it would be better if clang chose one libstdc++ include directory
and stuck to it. Or maybe I just missed the documentation on the best way to
handle this.

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