diff options
| author | Douglas Gregor <dgregor@apple.com> | 2011-10-09 18:45:17 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2011-10-09 18:45:17 +0000 |
| commit | c4475e8cd615995793f445286af616ba0cd6a4dd (patch) | |
| tree | d4d46994a4153bcda0a149ad79f3ebf9abae732d | |
| parent | 4d328b6e1643c973826b2f7c388649bc655e6ad8 (diff) | |
| download | bcm5719-llvm-c4475e8cd615995793f445286af616ba0cd6a4dd.tar.gz bcm5719-llvm-c4475e8cd615995793f445286af616ba0cd6a4dd.zip | |
When building source location information for an _Atomic type, be sure
to fill in the source locations for the underlying value type. Fixes
an intermittent crasher (due to uninitialized data) in the PCH test
for _Atomic types.
llvm-svn: 141512
| -rw-r--r-- | clang/lib/Sema/SemaType.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaType.cpp b/clang/lib/Sema/SemaType.cpp index 1e0c2d60c4a..154b2a83f99 100644 --- a/clang/lib/Sema/SemaType.cpp +++ b/clang/lib/Sema/SemaType.cpp @@ -2885,6 +2885,10 @@ namespace { void VisitAtomicTypeLoc(AtomicTypeLoc TL) { TL.setKWLoc(DS.getTypeSpecTypeLoc()); TL.setParensRange(DS.getTypeofParensRange()); + + TypeSourceInfo *TInfo = 0; + Sema::GetTypeFromParser(DS.getRepAsType(), &TInfo); + TL.getValueLoc().initializeFullCopy(TInfo->getTypeLoc()); } void VisitTypeLoc(TypeLoc TL) { |

