<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Aug 26, 2014 at 12:30 PM, Reid Kleckner <span dir="ltr"><<a href="mailto:rnk@google.com" target="_blank" class="cremed">rnk@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Mmmm, delicious template instantiation. This has come up before, and the solution was to reduce the complexity of the template to avoid follow-on instantiations like SmallVector<T>.</div>
</blockquote><div><br></div><div>In many cases, fixing this actually increases complexity of the code.</div><div>For example, I have a change that removes ~16% of symbols by doing manual pointer deletion instead of using std::unique_ptr<>.</div>
<div>I'll send the change for review.</div><div><br></div><div>wrt whether LLVM should build without the /bigobj flag, that would be for someone else to decide.</div><div> <br></div><div>_Sam</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="gmail_extra">
<br><br><div class="gmail_quote"><div><div class="h5">On Tue, Aug 26, 2014 at 6:57 AM, Oliver Stannard <span dir="ltr"><<a href="mailto:oliver.stannard@arm.com" target="_blank" class="cremed">oliver.stannard@arm.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><div class="h5">
<div lang="EN-GB" link="blue" vlink="purple"><div><p class="MsoNormal">Hi all,<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Our windows debug builds of clang have started failing with this error message:<u></u><u></u></p>

<p class="MsoNormal">…snip…\llvm\tools\clang\lib\ASTMatchers\Dynamic\Registry.cpp : fatal error C1128: number of sections exceeded object file format limit : compile with /bigobj […snip…\llvm\tools\clang\lib\ASTMatchers\Dynamic\clangDynamicASTMatchers.vcxproj]<u></u><u></u></p>

<p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">This is building the debug configuration using the MSVC from Visual Studio Pro 2012 update 4, the release build of the same source succeeded. The source used was LLVM/clang trunk as of about 0500 UTC. The build of the source from the same time a day before succeeded.<u></u><u></u></p>

<p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">The error is caused by one object file which would have to contain more than 2^16 sections. Adding /bigobj should fix this, but should LLVM be able to build without this option?<u></u><u></u></p>

<p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">The buildbots did not catch this because it only occurs for debug builds.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Thanks,<u></u><u></u></p>

<p class="MsoNormal">Oliver<u></u><u></u></p></div></div><br></div></div>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank" class="cremed">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank" class="cremed">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank" class="cremed">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div></div>