Uploaded image for project: 'C++ Standard Library'
  1. C++ Standard Library
  2. STDCXX-324

std::div_t, std::ldiv_t missing members quot and rem

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.1.2, 4.1.3
    • 4.2.0
    • 26. Numerics
    • None
    • EDG eccp/Solaris

    Description

      The C standard(7.20.6.2, p3) requires the structs div_t and ldiv_t to contain the members quot and rem. We seem to be missing them:

      $ cat t.cpp && make t
      #include <cstdlib>

      int main ()
      {
      const std::div_t x = { };
      const std::ldiv_t y = { };

      return x.quot + x.rem + y.quot + y.rem;
      }

      eccp -c -I/build/sebor/dev/stdlib/include/ansi -D_RWSTDDEBUG -D_RWSTD_USE_CONFIG -I/build/sebor/dev/stdlib/include -I/build/sebor/eccp-3.8-11s/include -I/build/sebor/dev/stdlib/include/ansi -I/build/sebor/PlumHall/lvs06a/conform -I/build/sebor/PlumHall/lvs06a/dst.3 -A -x --template_directory=/build/sebor/eccp-3.8-11s/lib -g --display_error_number --remarks --diag_suppress 193,236,340,401,261,479,487,678,679,815 --diag_suppress 177,381,191,68,550,611,997,549 t.cpp
      "t.cpp", line 8: error #135: class "std::div_t" has no member "quot"
      return x.quot + x.rem + y.quot + y.rem;
      ^

      "t.cpp", line 8: error #135: class "std::div_t" has no member "rem"
      return x.quot + x.rem + y.quot + y.rem;
      ^

      "t.cpp", line 8: error #135: class "std::ldiv_t" has no member "quot"
      return x.quot + x.rem + y.quot + y.rem;
      ^

      "t.cpp", line 8: error #135: class "std::ldiv_t" has no member "rem"
      return x.quot + x.rem + y.quot + y.rem;
      ^

      4 errors detected in the compilation of "t.cpp".
      make: *** [t.o] Error 2

      Attachments

        Activity

          People

            sebor Martin Sebor
            sebor Martin Sebor
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: