diff options
author | David Blaikie <dblaikie@gmail.com> | 2012-04-30 00:42:50 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2012-04-30 00:42:50 +0000 |
commit | 13ef0cfd6976f54c5922be4ee2aaa4dac4395959 (patch) | |
tree | f41b35095408c56224947a915b5b0e1ff4161887 /clang | |
parent | 6a527718238236bff8672e29414f71ee09073e2a (diff) | |
download | bcm5719-llvm-13ef0cfd6976f54c5922be4ee2aaa4dac4395959.tar.gz bcm5719-llvm-13ef0cfd6976f54c5922be4ee2aaa4dac4395959.zip |
Correct CFGBlock's front() and back() to return by const ref rather than value.
This ought to fix PR11926, a crash when when running Clang built with GCC 4.7
llvm-svn: 155805
Diffstat (limited to 'clang')
-rw-r--r-- | clang/include/clang/Analysis/CFG.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/include/clang/Analysis/CFG.h b/clang/include/clang/Analysis/CFG.h index 27b22b8c622..c8adfef4429 100644 --- a/clang/include/clang/Analysis/CFG.h +++ b/clang/include/clang/Analysis/CFG.h @@ -277,6 +277,7 @@ class CFGBlock { typedef std::reverse_iterator<ImplTy::const_iterator> const_iterator; typedef ImplTy::iterator reverse_iterator; typedef ImplTy::const_iterator const_reverse_iterator; + typedef ImplTy::const_reference const_reference; void push_back(CFGElement e, BumpVectorContext &C) { Impl.push_back(e, C); } reverse_iterator insert(reverse_iterator I, size_t Cnt, CFGElement E, @@ -284,8 +285,8 @@ class CFGBlock { return Impl.insert(I, Cnt, E, C); } - CFGElement front() const { return Impl.back(); } - CFGElement back() const { return Impl.front(); } + const_reference front() const { return Impl.back(); } + const_reference back() const { return Impl.front(); } iterator begin() { return Impl.rbegin(); } iterator end() { return Impl.rend(); } |