On Tue, May 22, 2012 at 2:36 PM, Daniel Jasper <[email protected]> wrote:
> On Tue, May 22, 2012 at 10:03 PM, Richard Smith <[email protected]>wrote: > >> Hi Daniel, >> >> On Tue, May 22, 2012 at 12:18 PM, Daniel Jasper <[email protected]>wrote: >> >>> Hello, >>> >>> I have noticed that the start location of FieldDecls is different in >>> template instantiations and in the primary template (the instantiations >>> loose the location of leading qualifiers). The reason is that the location >>> of qualifiers is currently not tracked in the TypeLocs. However, it makes >>> sense to use the primary template's inner start location making the two >>> FieldDecls have the same code range independent of the TypeLoc >>> implementation. >>> >>> Please find the corresponding patch attached. >>> >> >> Can you add a test for this? Also, VarDecls (and the substitution of >> function types for function declarations) seem to have the same problem. We >> should fix all of them together. >> > > Not much else there is actually tested. I could add > RecursiveASTVisitor-tests for a couple of things, but I think this should > be well-designed and will take more effort. I can try to find a diagnostic > that triggers on this (start location of FieldDecls in template > instantiations), but maybe we can get this in as a small bug-fix. > I've had a brief look, and didn't see a reasonable way to test this. Committed as r157311. > VarDecls seem to be fine, they actually use getInnerLocStart() at the > appropriate place. So, we are actually making the behavior more consistent > :-). > Right you are, I was looking at the instantiation location for the type, which seems like a reasonable use of getTypeSpecStartLoc. Thanks!
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
