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

[EDG eccp 3.9] unsats on std::__rw_replace for string member templates

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 4.2.0
    • 4.2.1
    • 21. Strings
    • None
    • Edison Design Group C/C++ Front End, version 3.9 (Mar 24 2007 16:01:33)

    • Linker Error

    Description

      Compiling and linking the following program with EDG eccp 3.9 produces the linker error below.

      $ cat t.cpp && nice gmake t
      #include <string>
      
      int main ()
      {
          std::string s;
      
          const int a = 97;
          s.append (&a, &a + 1);
          s.assign (&a, &a + 1);
          s.insert (s.begin (), &a, &a + 1);
          s.replace (s.begin (), s.end (), &a, &a + 1);
      }
      generating dependencies for t.cpp
      eccp -M -I/amd/devco/sebor/stdcxx/include/ansi -D_RWSTDDEBUG    -I/amd/devco/sebor/stdcxx/include -I/build/sebor/stdcxx-eccp-3.9-11s/include -I/amd/devco/sebor/stdcxx/tests/include  -A -x --template_directory=/build/sebor/stdcxx-eccp-3.9-11s/lib -g   --display_error_number --remarks --diag_suppress 193,236,340,401,261,479,487,678,679,815  t.cpp
      eccp -c -I/amd/devco/sebor/stdcxx/include/ansi -D_RWSTDDEBUG    -I/amd/devco/sebor/stdcxx/include -I/build/sebor/stdcxx-eccp-3.9-11s/include -I/amd/devco/sebor/stdcxx/tests/include  -A -x --template_directory=/build/sebor/stdcxx-eccp-3.9-11s/lib -g   --display_error_number --remarks --diag_suppress 193,236,340,401,261,479,487,678,679,815   t.cpp
      eccp t.o -o t -L/build/sebor/stdcxx-eccp-3.9-11s/rwtest -lrwtest11s --template_directory=/build/sebor/stdcxx-eccp-3.9-11s/lib    -L/build/sebor/stdcxx-eccp-3.9-11s/lib  -lstd11s  -lm 
      t.o(.text+0x2a8): In function `main':
      t.cpp:8: undefined reference to `std::__rw_replace<char, std::char_traits<char>, std::allocator<char>, __rw::__rw_debug_iter<std::basic_string<char, std::char_traits<char>, std::allocator<char>>, char *, char *>, const int *>(std::basic_string<T1, T2, T3>&, T4, T4, T5, T5)'
      t.o(.text+0x423):t.cpp:9: undefined reference to `std::__rw_replace<char, std::char_traits<char>, std::allocator<char>, __rw::__rw_debug_iter<std::basic_string<char, std::char_traits<char>, std::allocator<char>>, char *, char *>, const int *>(std::basic_string<T1, T2, T3>&, T4, T4, T5, T5)'
      t.o(.text+0x711):t.cpp:10: undefined reference to `std::__rw_replace<char, std::char_traits<char>, std::allocator<char>, __rw::__rw_debug_iter<std::basic_string<char, std::char_traits<char>, std::allocator<char>>, char *, char *>, const int *>(std::basic_string<T1, T2, T3>&, T4, T4, T5, T5)'
      t.o(.text+0xc5a):t.cpp:11: undefined reference to `std::__rw_replace<char, std::char_traits<char>, std::allocator<char>, __rw::__rw_debug_iter<std::basic_string<char, std::char_traits<char>, std::allocator<char>>, char *, char *>, const int *>(std::basic_string<T1, T2, T3>&, T4, T4, T5, T5)'
      collect2: ld returned 1 exit status
      gmake: *** [t] Error 1
      

      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:

              Time Tracking

                Estimated:
                Original Estimate - 1h
                1h
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 1h
                1h

                Slack

                  Issue deployment