This is an archive of the discontinued LLVM Phabricator instance.

Implement LWG 2221 - No formatted output operator for nullptr
AcceptedPublic

Authored by mclow.lists on Mar 8 2018, 10:31 AM.

Details

Reviewers
EricWF
dexonsmith
Summary

https://cplusplus.github.io/LWG/issue2221

This is straightforward; I'm putting it up for review because it will add symbols to the dylib

Diff Detail

Event Timeline

mclow.lists created this revision.Mar 8 2018, 10:31 AM
This revision is now accepted and ready to land.Mar 8 2018, 5:54 PM
mclow.lists closed this revision.Sep 19 2018, 11:31 AM

Landed as revision 342566

mclow.lists reopened this revision.Sep 19 2018, 2:08 PM

Reverted in r342590 while I investigate additions to the dylib.

This revision is now accepted and ready to land.Sep 19 2018, 2:08 PM

Symbol added: _ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEElsEDn

{'is_defined': True, 'type': 'FUNC', 'name': '_ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEElsEDn'}

Symbol added: _ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEElsEDn

{'is_defined': True, 'type': 'FUNC', 'name': '_ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEElsEDn'}

Symbol added: _ZNSt3__1lsIwNS_11char_traitsIwEEEERNS_13basic_ostreamIT_T0_EES7_PKc

{'is_defined': True, 'type': 'FUNC', 'name': '_ZNSt3__1lsIwNS_11char_traitsIwEEEERNS_13basic_ostreamIT_T0_EES7_PKc'}

Symbol added: _ZNSt3124put_character_sequenceIcNS_11char_traitsIcEEEERNS_13basic_ostreamIT_T0_EES7_PKS4_m

{'is_defined': True, 'type': 'FUNC', 'name': '_ZNSt3__124__put_character_sequenceIcNS_11char_traitsIcEEEERNS_13basic_ostreamIT_T0_EES7_PKS4_m'}

Seems like revert didn't go through. I suspect it is causing build failure in http://green.lab.llvm.org/green/job/clang-stage1-configure-RA/49593/consoleText

SANITIZER_TEST_OBJECTS.sanitizer_vector_test.cc.i386.o SANITIZER_TEST_OBJECTS.gtest-all.cc.i386.o /Users/buildslave/jenkins/workspace/clang-stage1-configure-RA/clang-build/tools/clang/runtime/compiler-rt-bins/lib/sanitizer_common/tests/libRTSanitizerCommon.test.osx.a -o /Users/buildslave/jenkins/workspace/clang-stage1-configure-RA/clang-build/tools/clang/runtime/compiler-rt-bins/lib/sanitizer_common/tests/./Sanitizer-i386-Test -g --driver-mode=g++ -stdlib=libc++ -lc++ -lc++abi -fapplication-extension -mmacosx-version-min=10.9 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -Wl,-U,___sanitizer_free_hook -Wl,-U,___sanitizer_malloc_hook -Wl,-U,___sanitizer_report_error_summary -Wl,-U,___sanitizer_sandbox_on_notify -Wl,-U,___sanitizer_symbolize_code -Wl,-U,___sanitizer_symbolize_data -Wl,-U,___sanitizer_symbolize_demangle -Wl,-U,___sanitizer_symbolize_flush -ldl -pthread -arch i386
Undefined symbols for architecture i386:
  "std::__1::basic_ostream<char, std::__1::char_traits<char> >::operator<<(std::nullptr_t)", referenced from:
      std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > testing::PrintToString<std::nullptr_t>(std::nullptr_t const&) in SANITIZER_TEST_OBJECTS.sanitizer_quarantine_test.cc.i386.o
      std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > testing::PrintToString<std::nullptr_t>(std::nullptr_t const&) in SANITIZER_TEST_OBJECTS.sanitizer_stacktrace_printer_test.cc.i386.o
ld: symbol(s) not found for architecture i386
clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
davide added a subscriber: davide.Sep 19 2018, 5:29 PM

This broke all the lldb bots as well, FWIW.