OK, the bug was introduced in r111357, which is largely doing the wrong 
thing. I'd suggest removing its mechanism and replacing it with a mechanism to 
store a deferred set of abstractness checks, as we do for other checks we defer 
until the end of the outermost class definition (see 
`DelayedDefaultedMemberExceptionSpecs` and 
`DelayedDestructorExceptionSpecChecks` for a pattern to follow).

  Basically, change `RequiresNonAbstractType` to check if the type is being 
defined, and if so, add it to the delayed set, then check and clear the delayed 
set when you get to the end of the outermost class definition.

http://llvm-reviews.chandlerc.com/D2514
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to