diff options
author | Daniel Franke <franke.daniel@gmail.com> | 2009-06-07 12:35:06 -0400 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2009-06-07 18:35:06 +0200 |
commit | a16d978fca0146aebb9e2ec46236d3cd03554695 (patch) | |
tree | 145c95b21aadf45f1cc3b40990eeebb7721a684f /gcc/fortran/expr.c | |
parent | ca8a87956aacfb2f74687734de9a5f20f86bf4fe (diff) | |
download | gcc-a16d978fca0146aebb9e2ec46236d3cd03554695.zip gcc-a16d978fca0146aebb9e2ec46236d3cd03554695.tar.gz gcc-a16d978fca0146aebb9e2ec46236d3cd03554695.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
* check.c (gfc_check_all_any): Check rank of DIM.
(gfc_check_count): Likewise.
* intrinsic.h (gfc_simplify_all): New prototype.
(gfc_simplify_any): Likewise.
(gfc_simplify_count): Likewise.
(gfc_simplify_sum): Likewise.
(gfc_simplify_product): Likewise.
* intrinsic.c (add_functions): Added new simplifier callbacks.
* simplify.c (transformational_result): New.
(simplify_transformation_to_scalar): New.
(simplify_transformation_to_array): New.
(gfc_count): New.
(gfc_simplify_all): New.
(gfc_simplify_any): New.
(gfc_simplify_count): New.
(gfc_simplify_sum): New.
(gfc_simplify_product): 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/count_init_expr.f03
* gfortran.dg/product_init_expr.f03
* gfortran.dg/sum_init_expr.f03
From-SVN: r148249
Diffstat (limited to 'gcc/fortran/expr.c')
-rw-r--r-- | gcc/fortran/expr.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c index 71acbd6..a6a3a3b 100644 --- a/gcc/fortran/expr.c +++ b/gcc/fortran/expr.c @@ -2128,9 +2128,9 @@ check_transformational (gfc_expr *e) }; static const char * const trans_func_f2003[] = { - "dot_product", "matmul", "null", "pack", "repeat", - "reshape", "selected_char_kind", "selected_int_kind", - "selected_real_kind", "transfer", "transpose", "trim", NULL + "all", "any", "count", "dot_product", "matmul", "null", "pack", + "product", "repeat", "reshape", "selected_char_kind", "selected_int_kind", + "selected_real_kind", "sum", "transfer", "transpose", "trim", NULL }; int i; |