<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </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 - clang++ -nostdlib++ -lstdc++ asserts"
   href="https://bugs.llvm.org/show_bug.cgi?id=36377">36377</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang++ -nostdlib++ -lstdc++ asserts
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </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>enhancement
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>Driver
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>hans@chromium.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org, nicolasweber@gmx.de
          </td>
        </tr></table>
      <p>
        <div>
        <pre>It should probably be an error instead?

$ bin/clang++ -nostdlib++ -lstdc++ /tmp/a.cc
clang++: ../tools/clang/lib/Driver/ToolChain.cpp:735: virtual void
clang::driver::ToolChain::AddCXXStdlibLibArgs(const llvm::opt::ArgList&,
llvm::opt::ArgStringList&) const: Assertion
`!Args.hasArg(options::OPT_nostdlibxx) && "should not have called this"'
failed.
#0 0x0000560a661501ba llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(bin/clang+++0x24251ba)
#1 0x0000560a6614e03e llvm::sys::RunSignalHandlers() (bin/clang+++0x242303e)
#2 0x0000560a6614e18c SignalHandler(int) (bin/clang+++0x242318c)
#3 0x00007fb2da3d60c0 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x110c0)
#4 0x00007fb2d8f6bfcf gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf)
#5 0x00007fb2d8f6d3fa abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa)
#6 0x00007fb2d8f64e37 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37)
#7 0x00007fb2d8f64ee2 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2)
#8 0x0000560a6660ec4d (bin/clang+++0x28e3c4d)
#9 0x0000560a6663d717
clang::driver::tools::AddLinkerInputs(clang::driver::ToolChain const&,
llvm::SmallVector<clang::driver::InputInfo, 4u> const&, llvm::opt::ArgList
const&, llvm::SmallVector<char const*, 16u>&, clang::driver::JobAction const&)
(bin/clang+++0x2912717)
#10 0x0000560a6666bac9
clang::driver::tools::gnutools::Linker::ConstructJob(clang::driver::Compilation&,
clang::driver::JobAction const&, clang::driver::InputInfo const&,
llvm::SmallVector<clang::driver::InputInfo, 4u> const&, llvm::opt::ArgList
const&, char const*) const (bin/clang+++0x2940ac9)
#11 0x0000560a665fac05
clang::driver::Driver::BuildJobsForActionNoCache(clang::driver::Compilation&,
clang::driver::Action const*, clang::driver::ToolChain const*, llvm::StringRef,
bool, bool, char const*, std::map<std::pair<clang::driver::Action const*,
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
<span class="quote">>, clang::driver::InputInfo, std::less<std::pair<clang::driver::Action const*,</span >
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
<span class="quote">> >, std::allocator<std::pair<std::pair<clang::driver::Action const*,</span >
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
<span class="quote">> const, clang::driver::InputInfo> > >&, clang::driver::Action::OffloadKind)</span >
const (bin/clang+++0x28cfc05)
#12 0x0000560a665fbca8
clang::driver::Driver::BuildJobsForAction(clang::driver::Compilation&,
clang::driver::Action const*, clang::driver::ToolChain const*, llvm::StringRef,
bool, bool, char const*, std::map<std::pair<clang::driver::Action const*,
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
<span class="quote">>, clang::driver::InputInfo, std::less<std::pair<clang::driver::Action const*,</span >
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
<span class="quote">> >, std::allocator<std::pair<std::pair<clang::driver::Action const*,</span >
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
<span class="quote">> const, clang::driver::InputInfo> > >&, clang::driver::Action::OffloadKind)</span >
const (bin/clang+++0x28d0ca8)
#13 0x0000560a665fc4ab
clang::driver::Driver::BuildJobs(clang::driver::Compilation&) const
(bin/clang+++0x28d14ab)
#14 0x0000560a665fd38e
clang::driver::Driver::BuildCompilation(llvm::ArrayRef<char const*>)
(bin/clang+++0x28d238e)
#15 0x0000560a64975cf0 main (bin/clang+++0xc4acf0)
#16 0x00007fb2d8f592b1 __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x202b1)
#17 0x0000560a649f104a _start (bin/clang+++0xcc604a)
Stack dump:
0.      Program arguments: bin/clang++ -nostdlib++ -lstdc++ /tmp/a.cc 
1.      Compilation construction
2.      Building compilation jobs
3.      Building compilation jobs
Aborted</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>