http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51486

             Bug #: 51486
           Summary: g++ doesn't implicitly search for <decimal> header in
                    system include path include/c++/<version>/decimal/
    Classification: Unclassified
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: r...@us.ibm.com


The following testcase fails when compiled without specifying the explicit
include path for the decimal/decimal header:

  decimal.cpp
  ---------------------------------------------------------------------------
  #include <decimal>
  using namespace std::decimal;

  int main() {
          decimal64 d64;
          decimal128 d128;
          /* extendddtd2  */
          d128 = d64;
          return 0;
  }

  $ /opt/at5.0/bin/g++ -m64 -O0 decimal.cpp -o decimal
  decimal.cpp:1:19: fatal error: decimal: No such file or directory
  compilation terminated.

When the include path is included explicitly compilation works fine:

  $ /opt/at5.0/bin/g++ -isystem /opt/at5.0/include/c++/4.6.2/decimal/ -m64 -O0
decimal.cpp -o decimal

Here's the version information for the compiler:

  $ /opt/at5.0/bin/g++ -v 2>&1  | grep version
  gcc version 4.6.2 20110919 (Advance-Toolchain-5.0-1) [ibm/gcc-4_6-branch
revision 181060] (GCC)

I'm operating under the assumption that #include <decimal> should pick up the
include/c++/4.6.2/decimal/decimal header automatically without having to
specify -isystem on compiler invocation.

Reply via email to