diff options
Diffstat (limited to 'gcc/tree-eh.c')
-rw-r--r-- | gcc/tree-eh.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index 21c3a1c3815..f15fe099142 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -1688,9 +1688,11 @@ tree_could_trap_p (tree expr) case IMAGPART_EXPR: case BIT_FIELD_REF: t = get_base_address (expr); - return !t || TREE_CODE (t) == INDIRECT_REF; + return !t || tree_could_trap_p (t); case INDIRECT_REF: + return (TREE_THIS_NOTRAP (expr) == false); + case TRUNC_DIV_EXPR: case CEIL_DIV_EXPR: case FLOOR_DIV_EXPR: |