diff options
author | Marcel Böhme <boehme.marcel@gmail.com> | 2016-04-08 12:06:59 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2016-04-08 12:06:59 +0000 |
commit | 59dad006fa31fe3355defcd6b38ab70fd7d2737f (patch) | |
tree | b50eee4ce2fe502d34cd28aa2505a3409987c65c | |
parent | c3da495616f26855ac6b2522e8bbecd7e718074e (diff) | |
download | gcc-59dad006fa31fe3355defcd6b38ab70fd7d2737f.zip gcc-59dad006fa31fe3355defcd6b38ab70fd7d2737f.tar.gz gcc-59dad006fa31fe3355defcd6b38ab70fd7d2737f.tar.bz2 |
Handle an overflow case (PR70498, patch by Marcel Böhme).
PR c++/70498
* cplus-dem.c (gnu_special): Handle case where consume_count returns
-1.
From-SVN: r234828
-rw-r--r-- | libiberty/ChangeLog | 6 | ||||
-rw-r--r-- | libiberty/cplus-dem.c | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 1e59c53..8e82a5f 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,9 @@ +2016-04-08 Marcel Böhme <boehme.marcel@gmail.com> + + PR c++/70498 + * cplus-dem.c (gnu_special): Handle case where consume_count returns + -1. + 2016-03-31 Mikhail Maltsev <maltsevm@gmail.com> Marcel Bohme boehme.marcel@gmail.com diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index 7ab46dd..abba234 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -3001,6 +3001,11 @@ gnu_special (struct work_stuff *work, const char **mangled, string *declp) success = 1; break; } + else if (n == -1) + { + success = 0; + break; + } } else { |