Your commit message doesn't mention this other recovery change:<div><br><div class="gmail_quote">On Mon, Nov 28, 2011 at 9:27 PM, Richard Smith <span dir="ltr"><<a href="mailto:richard-llvm@metafoo.co.uk">richard-llvm@metafoo.co.uk</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div id=":dvf">-      if (Tok.is(tok::l_brace)) {<br>
-        // This recovery skips the entire function body. It would be nice<br>
-        // to simply call ParseFunctionDefinition() below, however Sema<br>
-        // assumes the declarator represents a function, not a typedef.<br>
-        ConsumeBrace();<br>
-        SkipUntil(tok::r_brace, true);<br>
-      } else {<br>
-        SkipUntil(tok::semi);<br>
-      }<br>
-      return 0;<br>
+      // Recover by ignoring the 'typedef'.<br>
+      DS.ClearStorageClassSpecs();</div></blockquote></div><br></div>