+2018-05-23 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/85874
+ * tree-data-ref.c (create_runtime_alias_checks): Defer
+ and ignore overflow warnings.
+
2018-05-23 Yury Gribov <tetra2005@gmail.com>
PR tree-optimization/85822
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-O3 -Wstrict-overflow=2 -Werror" } */
+
+typedef __SIZE_TYPE__ size_t;
+extern char *strtok_r (char *__restrict __s, const char *__restrict __delim,
+ char **__restrict __save_ptr)
+ __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
+extern const unsigned short int **__ctype_b_loc (void)
+ __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
+extern int *DEBUGLEVEL_CLASS;
+size_t debug_num_classes = 0;
+void debug_parse_param(char *param);
+void
+debug_parse_levels(const char *params_str, size_t str_len)
+{
+ char str[str_len+1];
+ char *tok, *saveptr;
+ size_t i;
+ tok = strtok_r(str, " \t,\n\r", &saveptr);
+ if (((*__ctype_b_loc ())[(int) ((tok[0]))]))
+ tok = strtok_r(((void *)0), " \t,\n\r", &saveptr);
+ else
+ DEBUGLEVEL_CLASS[0] = 0;
+ for (i = 0 +1; i < debug_num_classes; i++)
+ DEBUGLEVEL_CLASS[i] = DEBUGLEVEL_CLASS[0];
+ while (tok != ((void *)0) )
+ debug_parse_param(tok);
+}
{
tree part_cond_expr;
+ fold_defer_overflow_warnings ();
for (size_t i = 0, s = alias_pairs->length (); i < s; ++i)
{
const dr_with_seg_len& dr_a = (*alias_pairs)[i].first;
else
*cond_expr = part_cond_expr;
}
+ fold_undefer_and_ignore_overflow_warnings ();
}
/* Check if OFFSET1 and OFFSET2 (DR_OFFSETs of some data-refs) are identical