diff options
author | Daniel Franke <franke.daniel@gmail.com> | 2009-06-07 13:33:34 -0400 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2009-06-07 19:33:34 +0200 |
commit | c430a6f9f8d4b0c65daa2a300378b31ccfacb9d7 (patch) | |
tree | 48c9eeaebfafed289ed9dd624607342231223647 /gcc/fortran/intrinsic.h | |
parent | a16d978fca0146aebb9e2ec46236d3cd03554695 (diff) | |
download | gcc-c430a6f9f8d4b0c65daa2a300378b31ccfacb9d7.zip gcc-c430a6f9f8d4b0c65daa2a300378b31ccfacb9d7.tar.gz gcc-c430a6f9f8d4b0c65daa2a300378b31ccfacb9d7.tar.bz2 |
re PR fortran/25104 ([F2003] Non-initialization expr. as case-selector)
2009-06-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/25104
PR fortran/29962
* array.c (gfc_append_constructor): Added NULL-check.
* check.c (gfc_check_spread): Check DIM.
(gfc_check_unpack): Check that the ARRAY arguments provides
enough values for MASK.
* intrinsic.h (gfc_simplify_spread): New prototype.
(gfc_simplify_unpack): Likewise.
* intrinsic.c (add_functions): Added new simplifier callbacks.
* simplify.c (gfc_simplify_spread): New.
(gfc_simplify_unpack): New.
* expr.c (check_transformational): Allow additional
* transformational
intrinsics in initialization expression.
2009-06-07 Daniel Franke <franke.daniel@gmail.com>
PR fortran/25104
PR fortran/29962
* gfortran.dg/spread_init_expr.f03: New.
* gfortran.dg/unpack_init_expr.f03: New.
* gfortran.dg/intrinsic_argument_conformance_2.f90: Adjusted
error message.
From-SVN: r148250
Diffstat (limited to 'gcc/fortran/intrinsic.h')
-rw-r--r-- | gcc/fortran/intrinsic.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/intrinsic.h b/gcc/fortran/intrinsic.h index b483b11..4ae15783 100644 --- a/gcc/fortran/intrinsic.h +++ b/gcc/fortran/intrinsic.h @@ -318,6 +318,7 @@ gfc_expr *gfc_simplify_sinh (gfc_expr *); gfc_expr *gfc_simplify_size (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_sngl (gfc_expr *); gfc_expr *gfc_simplify_spacing (gfc_expr *); +gfc_expr *gfc_simplify_spread (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_sqrt (gfc_expr *); gfc_expr *gfc_simplify_sum (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_tan (gfc_expr *); @@ -328,6 +329,7 @@ gfc_expr *gfc_simplify_transfer (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_transpose (gfc_expr *); gfc_expr *gfc_simplify_trim (gfc_expr *); gfc_expr *gfc_simplify_ubound (gfc_expr *, gfc_expr *, gfc_expr *); +gfc_expr *gfc_simplify_unpack (gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_verify (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *); gfc_expr *gfc_simplify_xor (gfc_expr *, gfc_expr *); |