<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - [powerpc-darwin] failing operator new replacement tests"
   href="http://llvm.org/bugs/show_bug.cgi?id=19058">19058</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[powerpc-darwin] failing operator new replacement tests
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libc++
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>3.4
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>All Bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>hhinnant@apple.com
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>fang@csl.cornell.edu
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>iains-llvm@btconnect.com, llvmbugs@cs.uiuc.edu, mclow.lists@gmail.com
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>On powerpc-darwin8, the following tests are failing under new.delete:

FAIL: libc++ ::
language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp
(1875 of 4644)
******************** TEST 'libc++ ::
language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp'
FAILED ********************
Compiled With: '/Volumes/Isolde/builds/LLVM/gcc40-cmake-build/bin/clang++' '-o'
'/tmp/tmp0m5X9zexe'
'/Volumes/Isolde/sources/LLVM-svn/libcxx.git/test/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp'
'-no-integrated-as' '-DDARWIN8_LIBSUPCXX' '-nostdinc++' '-std=c++0x'
'-I/Users/fang/local/src/LLVM-svn/libcxx.git/test/../include'
'-I/Users/fang/local/src/LLVM-svn/libcxx.git/test/../test/support'
'-B/sw/lib/odcctools/bin' '-nodefaultlibs'
'-L/Users/fang/local/src/LLVM-svn/libcxx-supcxx-stage1-build/lib' '-lc++'
'-lsupc++' '-lgcc_s.10.4'
'/Volumes/Isolde/builds/LLVM/gcc40-cmake-build/bin/../lib/clang/3.5/lib/darwin/libclang_rt.ppc.a'
'-lSystem' '-lSystemStubs'
Command: 'env'
'DYLD_LIBRARY_PATH=/Users/fang/local/src/LLVM-svn/libcxx-supcxx-stage1-build/lib'
'/tmp/tmp0m5X9zexe'
Exit Code: -6
Standard Error:
--
/Volumes/Isolde/sources/LLVM-svn/libcxx.git/test/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow_replace.pass.cpp:45:
failed assertion `new_called'
Assertion failed: (libcompiler_rt abort), function __eprintf, file
/Users/fang/local/src/LLVM-svn/llvm.git/projects/compiler-rt/lib/eprintf.c,
line 33.
--

Compiled test failed unexpectedly!
********************

FAIL: libc++ ::
language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp
(1881 of 4644)
******************** TEST 'libc++ ::
language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp'
FAILED ********************
Compiled With: '/Volumes/Isolde/builds/LLVM/gcc40-cmake-build/bin/clang++' '-o'
'/tmp/tmprLUfxMexe'
'/Volumes/Isolde/sources/LLVM-svn/libcxx.git/test/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp'
'-no-integrated-as' '-DDARWIN8_LIBSUPCXX' '-nostdinc++' '-std=c++0x'
'-I/Users/fang/local/src/LLVM-svn/libcxx.git/test/../include'
'-I/Users/fang/local/src/LLVM-svn/libcxx.git/test/../test/support'
'-B/sw/lib/odcctools/bin' '-nodefaultlibs'
'-L/Users/fang/local/src/LLVM-svn/libcxx-supcxx-stage1-build/lib' '-lc++'
'-lsupc++' '-lgcc_s.10.4'
'/Volumes/Isolde/builds/LLVM/gcc40-cmake-build/bin/../lib/clang/3.5/lib/darwin/libclang_rt.ppc.a'
'-lSystem' '-lSystemStubs'
Command: 'env'
'DYLD_LIBRARY_PATH=/Users/fang/local/src/LLVM-svn/libcxx-supcxx-stage1-build/lib'
'/tmp/tmprLUfxMexe'
Exit Code: -6
Standard Error:
--
/Volumes/Isolde/sources/LLVM-svn/libcxx.git/test/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow_replace.pass.cpp:45:
failed assertion `new_called'
Assertion failed: (libcompiler_rt abort), function __eprintf, file
/Users/fang/local/src/LLVM-svn/llvm.git/projects/compiler-rt/lib/eprintf.c,
line 33.
--

Compiled test failed unexpectedly!
********************

I took a look at the linkage of these symbols on powerpc-darwin8:
% nm lib/libc++.dylib | c++filt | grep operator | grep -e new -e delete
000f7b88 t operator delete[](void*)
000f7b7c t operator delete(void*)
000f9448 t operator new[](unsigned long)
000f93a4 t operator new(unsigned long)

It looks like these are given static linkage, whereas on x86_64-darwin11,
system's libc++ has extern/global linkage:
00000000000393fb T operator delete[](void*)
0000000000039405 T operator delete[](void*, std::nothrow_t const&)
00000000000393e0 T operator delete(void*)
00000000000393f1 T operator delete(void*, std::nothrow_t const&)
0000000000039391 T operator new[](unsigned long)
00000000000393b0 T operator new[](unsigned long, std::nothrow_t const&)
00000000000392e5 T operator new(unsigned long)
0000000000039361 T operator new(unsigned long, std::nothrow_t const&)

Does this explain why these tests are failing?  
Do those symbols require extern linkage to be override-able?  
or is there some other reason?</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>