[patch, fortran-dev] PR29962 - simplifiers for SPREAD and UNPACK
Daniel Franke
franke.daniel@gmail.com
Sun Apr 5 22:50:00 GMT 2009
Two more simplifiers: SPREAD and UNPACK.
gcc/fortran/:
2009-04-05 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.
gcc/testsuite/:
2009-04-05 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.
Regression tested on i686-pc-linux-gnu.
Ok for dev-branch and (eventually) trunk?
Cheers
Daniel
P.S. CSHIFT, EOSHIFT, MINVAL/MAXVAL, MINLOC/MAXLOC to go.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr29962-spread-unpack.diff
Type: text/x-patch
Size: 13316 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20090405/c0f2ba0b/attachment.bin>
More information about the Fortran
mailing list