re PR middle-end/37976 (ICE in insert_into_preds_of_block)
2008-11-01 Richard Guenther <rguenther@suse.de> PR middle-end/37976 * builtins.c (fold_builtin_strspn): Return a size_t. (fold_builtin_strcspn): Likewise. * gcc.c-torture/compile/pr37976.c: New testcase. From-SVN: r141514
This commit is contained in:
parent
8dd5e93af6
commit
002bd9f0ac
4 changed files with 20 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
|||
2008-11-01 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR middle-end/37976
|
||||
* builtins.c (fold_builtin_strspn): Return a size_t.
|
||||
(fold_builtin_strcspn): Likewise.
|
||||
|
||||
2008-10-31 Nathan Froyd <froydnj@codesourcery.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_file_start): Output gnu
|
||||
|
|
|
@ -11398,7 +11398,7 @@ fold_builtin_strspn (tree s1, tree s2)
|
|||
if ((p1 && *p1 == '\0') || (p2 && *p2 == '\0'))
|
||||
/* Evaluate and ignore both arguments in case either one has
|
||||
side-effects. */
|
||||
return omit_two_operands (integer_type_node, integer_zero_node,
|
||||
return omit_two_operands (size_type_node, size_zero_node,
|
||||
s1, s2);
|
||||
return NULL_TREE;
|
||||
}
|
||||
|
@ -11444,8 +11444,8 @@ fold_builtin_strcspn (tree s1, tree s2)
|
|||
{
|
||||
/* Evaluate and ignore argument s2 in case it has
|
||||
side-effects. */
|
||||
return omit_one_operand (integer_type_node,
|
||||
integer_zero_node, s2);
|
||||
return omit_one_operand (size_type_node,
|
||||
size_zero_node, s2);
|
||||
}
|
||||
|
||||
/* If the second argument is "", return __builtin_strlen(s1). */
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2008-11-01 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR middle-end/37976
|
||||
* gcc.c-torture/compile/pr37976.c: New testcase.
|
||||
|
||||
2008-11-01 Dennis Wassel <dennis.wassel@gmail.com>
|
||||
|
||||
PR fortran/37159
|
||||
|
|
6
gcc/testsuite/gcc.c-torture/compile/pr37976.c
Normal file
6
gcc/testsuite/gcc.c-torture/compile/pr37976.c
Normal file
|
@ -0,0 +1,6 @@
|
|||
void percent_x(int ch, char *p, char* ok_chars)
|
||||
{
|
||||
char *cp = ch == 'a' ? p : "";
|
||||
for (;*(cp += __builtin_strspn (cp, ok_chars));)
|
||||
;
|
||||
}
|
Loading…
Add table
Reference in a new issue