diff options
author | Tobias Burnus <burnus@gcc.gnu.org> | 2008-01-28 18:25:55 +0100 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2008-01-28 18:25:55 +0100 |
commit | 64a96f5bc3736c2d423823d1ca135eef3760cf6b (patch) | |
tree | 86a896609bc6e094eff7088fd1dd617ed383b6cc /gcc/fortran | |
parent | a3a7c5df2edb4b6b9f9fbdbbea42f0b2e547ee6a (diff) | |
download | gcc-64a96f5bc3736c2d423823d1ca135eef3760cf6b.zip gcc-64a96f5bc3736c2d423823d1ca135eef3760cf6b.tar.gz gcc-64a96f5bc3736c2d423823d1ca135eef3760cf6b.tar.bz2 |
[multiple changes]
2008-01-28 Tobias Burnus <burnus@net-b.de>
PR libfortran/34980
* simplify.c (gfc_simplify_shape): Simplify rank zero arrays.
2008-01-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/34980
* gfortran.dg/shape_3.f90: New test.
From-SVN: r131913
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/simplify.c | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 282b06a..0923a77 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2008-01-28 Tobias Burnus <burnus@net-b.de> + + PR libfortran/34980 + * simplify.c (gfc_simplify_shape): Simplify rank zero arrays. + 2008-01-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/34990 diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c index 12be1e0..1b5b23e 100644 --- a/gcc/fortran/simplify.c +++ b/gcc/fortran/simplify.c @@ -3714,7 +3714,11 @@ gfc_simplify_shape (gfc_expr *source) int n; try t; - if (source->rank == 0 || source->expr_type != EXPR_VARIABLE) + if (source->rank == 0) + return gfc_start_constructor (BT_INTEGER, gfc_default_integer_kind, + &source->where); + + if (source->expr_type != EXPR_VARIABLE) return NULL; result = gfc_start_constructor (BT_INTEGER, gfc_default_integer_kind, |