https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69739

--- Comment #5 from Harald Anlauf <anlauf at gmx dot de> ---
You probably hit something that's just not yet implemented:

trans-expr.c:

(gdb) list 4083,4096
4083        case GFC_ISYM_LBOUND:
4084        case GFC_ISYM_UBOUND:
4085            /* TODO These implementations of lbound and ubound do not limit
if
4086               the size < 0, according to F95's 13.14.53 and 13.14.113.  */
4087
4088          if (!sym->as || sym->as->rank == 0)
4089            return false;
4090
4091          if (arg2 && arg2->expr_type == EXPR_CONSTANT)
4092            d = mpz_get_si (arg2->value.integer) - 1;
4093          else
4094            /* TODO: If the need arises, this could produce an array of
4095               ubound/lbounds.  */
4096            gcc_unreachable ();

Reply via email to