[Bug analyzer/93405] Passing constant arguments to subroutines in Fortran ... and the analyzer.
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Feb 10 21:25:00 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93405
--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by David Malcolm <dmalcolm@gcc.gnu.org>:
https://gcc.gnu.org/g:41a9e940c7014f117738a9a59b31833047a1083d
commit r10-6564-g41a9e940c7014f117738a9a59b31833047a1083d
Author: David Malcolm <dmalcolm@redhat.com>
Date: Wed Feb 5 16:48:53 2020 -0500
analyzer: fix ICE with fortran constant arguments (PR 93405)
PR analyzer/93405 reports an ICE with -fanalyzer when passing
a constant "by reference" in gfortran.
The issue is that the constant is passed as an ADDR_EXPR
of a CONST_DECL, and region_model::get_lvalue_1 doesn't
know how to handle CONST_DECL.
This patch implements it for CONST_DECL by providing
a placeholder region, holding the CONST_DECL's value,
fixing the ICE.
gcc/analyzer/ChangeLog:
PR analyzer/93405
* region-model.cc (region_model::get_lvalue_1): Implement
CONST_DECL.
gcc/testsuite/ChangeLog:
PR analyzer/93405
* gfortran.dg/analyzer/pr93405.f90: New test.
More information about the Gcc-bugs
mailing list