summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExceptionSpec.cpp
diff options
context:
space:
mode:
authorStephen Wilson <wilsons@start.ca>2011-05-20 04:27:12 +0000
committerStephen Wilson <wilsons@start.ca>2011-05-20 04:27:12 +0000
commit8063a4a47a5ace1fc01c3bf843fd2bdfb504481a (patch)
tree76e388d02b39c8ab1e164d86ac20257c5f5871da /clang/lib/Sema/SemaExceptionSpec.cpp
parentf663741db009e4bdfd569e4ba1df7bba95e826db (diff)
downloadbcm5719-llvm-8063a4a47a5ace1fc01c3bf843fd2bdfb504481a.tar.gz
bcm5719-llvm-8063a4a47a5ace1fc01c3bf843fd2bdfb504481a.zip
Do not parse DIE's outside a compilation units range.
In DWARFCompileUnit::ExtractDIEsIfNeeded we are relying on a compilation units DIEs to be terminated by a null entry. I think the standard is fairly clear that all sibling chains are to be terminated by null, but at least gcc 4.5.2 disagrees -- the top level chain drops the final entry. This results in us interpreting the next compilation unit header as a DIE. Regardless of whether gcc is right or wrong, we should not overstep a compilation units extent. This patch ensures that we do not attempt to extract a DIE beyond the length specified for a given DWARFCompileUnit by ensuring our current offset is strictly less than the start of the next CU. llvm-svn: 131721
Diffstat (limited to 'clang/lib/Sema/SemaExceptionSpec.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud