<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Jul 20, 2015 at 1:07 PM, Reid Kleckner <span dir="ltr"><<a href="mailto:rnk@google.com" target="_blank">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"><div class="gmail_extra"><div class="gmail_quote"><span class="">On Sun, Jul 19, 2015 at 2:41 PM, Richard Smith <span dir="ltr"><<a href="mailto:richard-llvm@metafoo.co.uk" target="_blank">richard-llvm@metafoo.co.uk</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">@@ -794,8 +795,15 @@ IdentifierInfo *ASTIdentifierLookupTrait<br>
// Set or check the various bits in the IdentifierInfo structure.<br>
// Token IDs are read-only.<br>
if (HasRevertedTokenIDToIdentifier && II->getTokenID() != tok::identifier)<br>
- II->RevertTokenIDToIdentifier();<br>
- II->setObjCOrBuiltinID(ObjCOrBuiltinID);<br>
+ II->revertTokenIDToIdentifier();<br>
+ if (!F.isModule())<br>
+ II->setObjCOrBuiltinID(ObjCOrBuiltinID);<br>
+ else if (HasRevertedBuiltin && II->getBuiltinID()) {<br>
+ II->revertBuiltin();<br>
+ assert((II->hasRevertedBuiltin() ||<br>
+ II->getObjCOrBuiltinID() == ObjCOrBuiltinID) &&<br>
+ "Incorrect ObjC keyword or builtin ID");<br>
+ }<br>
assert(II->isExtensionToken() == ExtensionToken &&<br>
"Incorrect extension token flag");<br>
(void)ExtensionToken;<br></blockquote><div><br></div></span><div>This assert is tripping for me locally on Windows. </div></div></div></div>
</blockquote></div><br></div><div class="gmail_extra">For posterity: this was caused by a stale modules cache, fixed in r242710. (It looks like this was only passing elsewhere because it bumps the mtime on various inputs to the module; that doesn't cause a module rebuild on Windows.)</div></div>