diff options
author | Jakub Jelinek <jakub@redhat.com> | 2011-03-15 12:28:35 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2011-03-15 12:28:35 +0100 |
commit | 7ee93d4e3473e678dcabef2e09b3cc1c820968e4 (patch) | |
tree | 650a4bed8de83c61ef341d24e657874751051e5a /gcc | |
parent | e106efc7801f8607c3453673a8c261cb59c3afb0 (diff) | |
download | gcc-7ee93d4e3473e678dcabef2e09b3cc1c820968e4.zip gcc-7ee93d4e3473e678dcabef2e09b3cc1c820968e4.tar.gz gcc-7ee93d4e3473e678dcabef2e09b3cc1c820968e4.tar.bz2 |
re PR tree-optimization/48129 (gcc.c-torture/execute/builtins/snprintf-chk.c ICE)
PR tree-optimization/48129
* builtins.c (fold_builtin_snprintf): Convert to type of
built_in_decls[BUILT_IN_SNPRINTF] retval instead of
implicit_built_in_decls[BUILT_IN_SNPRINTF] retval.
From-SVN: r170985
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/builtins.c | 5 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3c55339..ec59459 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2011-03-15 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/48129 + * builtins.c (fold_builtin_snprintf): Convert to type of + built_in_decls[BUILT_IN_SNPRINTF] retval instead of + implicit_built_in_decls[BUILT_IN_SNPRINTF] retval. + 2011-03-15 Richard Guenther <rguenther@suse.de> PR tree-optimization/41490 diff --git a/gcc/builtins.c b/gcc/builtins.c index a59b23c..ad21b2d 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -12038,9 +12038,8 @@ fold_builtin_snprintf (location_t loc, tree dest, tree destsize, tree fmt, if (call && retval) { - retval = fold_convert_loc - (loc, TREE_TYPE (TREE_TYPE (implicit_built_in_decls[BUILT_IN_SNPRINTF])), - retval); + tree fn = built_in_decls[BUILT_IN_SNPRINTF]; + retval = fold_convert_loc (loc, TREE_TYPE (TREE_TYPE (fn)), retval); return build2 (COMPOUND_EXPR, TREE_TYPE (retval), call, retval); } else |