[cfe-dev] When should a RecordDecl be invalid?

Reid Kleckner rnk at google.com
Fri Dec 20 09:50:13 PST 2013


I think the right fix for PR18284 is to mark just the method invalid.  The
problem of invalid base classes still needs to be solved, though.


On Fri, Dec 20, 2013 at 9:38 AM, Nico Weber <thakis at chromium.org> wrote:

> Hi,
>
> I've been looking at PR18284, where we have two RecordDecls, one the
> subclass of the other, and we go and mark the superclass RecordDecl as
> invalid, while keeping the subclass valid. This ends up confusing the code
> that computes the subclass's layout, since that only checks if the subclass
> is valid and then asserts that all superclasses are valid.
>
> Is the bug that they layout code assumes that "record valid => superclass
> records valid", or is the bug that the code that marks the superclass as
> invalid doesn't mark all subclasses invalid too?
>
> Likewise, should a class being valid imply that all its methods and fields
> are valid? One possible fix for PR18284 is to stop marking a class invalid
> when one of its methods is invalid (this is currently done in some cases,
> but not in all), but that doesn't seem like the right fix.
>
> Thanks,
> Nico
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20131220/9bd0ee65/attachment.html>


More information about the cfe-dev mailing list