aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorCraig Silverstein <csilvers2000@yahoo.com>2010-07-09 15:19:34 +0000
committerCraig Silverstein <csilvers2000@yahoo.com>2010-07-09 15:19:34 +0000
commit60f8b286adfe5d461758cb89a7c69891f297d278 (patch)
treea74c35611dd7e21ccf7819075b778280e6111b10 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parent0028cc673075cce713603e9bbf159ecf70632a63 (diff)
downloadllvm-60f8b286adfe5d461758cb89a7c69891f297d278.zip
llvm-60f8b286adfe5d461758cb89a7c69891f297d278.tar.gz
llvm-60f8b286adfe5d461758cb89a7c69891f297d278.tar.bz2
Move traverseunqualifiedtypeloc over to the 'main' typeloc tree.
Note that this is a move -- we pretend that we were really looking at the unqualified typeloc all along -- rather than a recursion, so we don't follow the normal CRTP plan of going through getDerived().TraverseTypeLoc. If we did, we'd be traversing twice for the same type (once as a QualifiedTypeLoc version of the type, once as an UnqualifiedTypeLoc version of the type), which in effect means we'd call VisitTypeLoc twice with the 'same' type. This solves that problem, at the cost of never seeing the qualified version of the type (unless the client subclasses TraverseQualifiedTypeLoc themselves). It's not a perfect solution. A perfect solution probably requires making QualifiedTypeLoc a wrapper around TypeLoc -- like QualType is a wrapper around Type* -- rather than being its own class in the type hierarchy. Reviewed by wan. llvm-svn: 107973
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions