<div dir="ltr">I think the answer to your high-level question is that LangOptions isn't really designed to be high-level and user-facing. Users use command lines, and LangOptions attempts to be a more logical, denormalized representation of their settings useful for the internals of the compiler.<div><br></div><div>I think you have two ways forward:</div><div><br></div><div>- Use libTooling the way clang-tidy does, and let it translate from normal high-level driver command lines to -cc1 lines for you. This is probably a lot of work.</div><div><br></div><div>- Dump LangOptions as David suggested and try to build a LangOptions close to what clang would do for a normal Windows compilation. This is probably easier to do now, if harder to maintain over time.</div><div><br></div><div>Not particularly awesome, unfortunately. =/</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 15, 2015 at 12:59 AM, Joshua Gerrard via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>So I've been working with clang as a library on Windows for a little while now, and I'm noticed a few things that I'd like to change, but in order to do so I need to know the "clang policy" for such things first.</div><div><br></div><div>There is a flag, MSVCCompat, which as you probably know already, tweaks some things so that clang works better on Windows.</div><div><br></div><div>However, other flags are required, such as DelayedTemplateParsing, in order for things to work. Now I understand that these need to be separate flags so that users on other platforms can enable things like DelayedTemplateParsing for other reasons, but as it stands enabling MSVCCompat doesn't make clang compatible with Windows.</div><div><br></div><div>As a result, I'd like to fix this problem by making things like DelayedTemplateParsing take effect when MSVCCompat is turned on. However, this would make it so that the "implied" flags would essentially have no effect, and turning off DelayedTemplateParsing would not have any effect if MSVCCompat was turned off.</div><div><br></div><div>Furthermore, I can't see the point in having both a MSCompatibility flag and a MSVCCompat flag; surely we should have one or the other?</div><div><br></div><div>How do you folks feel about this? I'd really like to make this my first contribution to clang.<br clear="all"></div><div><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><p dir="ltr">--<br> Joshua Gerrard<br> JUCE Software Developer<br></p><p dir="ltr"><font size="2"><i>ROLI’s </i><a href="http://www.telegraph.co.uk/luxury/design/31520/the-seaboard-grand-piano-wins-designs-of-the-year-2014-award.html" target="_blank"><i><font color="#1155cc">award-winning</font></i></a><i> Seaboard GRAND, celebrated as the “</i><a href="http://edition.cnn.com/2013/09/27/tech/innovation/hans-zimmer-seaboard-future-piano/" target="_blank"><i><font color="#1155cc">piano of the future</font></i></a><i>”, is now joined by the </i><a href="https://www.youtube.com/watch?v=fGr7VbDiRNw" target="_blank"><i><font color="#1155cc">Seaboard RISE</font></i></a><i>, “</i><a href="http://www.soundonsound.com/news?NewsID=18726" target="_blank"><i><font color="#1155cc">every bit as slimline and attractive as its bigger brother</font></i></a><i>”. The press is hailing the Seaboard RISE as “</i><a href="http://www.wired.co.uk/news/archive/2015-09/10/seaboard-rise-digital-keyboard-launch-uk-price" target="_blank"><i><font color="#1155cc">innovative</font></i></a><i>”, “</i><a href="http://createdigitalmusic.com/2015/09/new-roli-instrument-wants-make-expressive-control-mainstream/" target="_blank"><i><font color="#1155cc">expressive</font></i></a><i>”, “</i><a href="http://createdigitalmusic.com/2015/09/new-roli-instrument-wants-make-expressive-control-mainstream/" target="_blank"><i><font color="#1155cc">accessible</font></i></a><i>”, and “</i><a href="http://www.slashgear.com/roli-seaboard-rise-is-like-3d-touch-for-musicians-11404216/" target="_blank"><i><font color="#1155cc">a keyboard controller that does to piano keys what 3D touch does to the iPhone</font></i></a><i>”. Now available for preorder at </i><a href="http://www.roli.com/" target="_blank"><i><font color="#1155cc">www.roli.com</font></i></a><i>.</i></font><br><br></p></div></div></div></div></div></div></div></div></div></div>
</div>
<br>_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div><br></div>