From 24e99e6ec1cc57f3660c00ff677c7feb16aa94d2 Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Fri, 22 Oct 2021 23:23:06 +0200 Subject: Fortran: Avoid running into assert with -fcheck= + UBSAN PR fortran/92621 gcc/fortran/ * trans-expr.c (gfc_trans_assignment_1): Add STRIP_NOPS. gcc/testsuite/ * gfortran.dg/bind-c-intent-out-2.f90: New test. --- gcc/fortran/trans-expr.c | 1 + 1 file changed, 1 insertion(+) (limited to 'gcc/fortran') diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index 29697e6..2d7f9e0 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -11727,6 +11727,7 @@ gfc_trans_assignment_1 (gfc_expr * expr1, gfc_expr * expr2, bool init_flag, tmp = INDIRECT_REF_P (lse.expr) ? gfc_build_addr_expr (NULL_TREE, lse.expr) : lse.expr; + STRIP_NOPS (tmp); /* We should only get array references here. */ gcc_assert (TREE_CODE (tmp) == POINTER_PLUS_EXPR -- cgit v1.1