diff options
author | Janus Weil <janus@gcc.gnu.org> | 2008-09-22 13:45:02 +0200 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2008-09-22 13:45:02 +0200 |
commit | f613cea7fc41d8133a083ced6cc0a11b9312f110 (patch) | |
tree | 5ace57c212233d9f04bcb96b875d8137f2545d01 /gcc/testsuite | |
parent | 22868cbf560231317a5c82348c08d396fa29f471 (diff) | |
download | gcc-f613cea7fc41d8133a083ced6cc0a11b9312f110.zip gcc-f613cea7fc41d8133a083ced6cc0a11b9312f110.tar.gz gcc-f613cea7fc41d8133a083ced6cc0a11b9312f110.tar.bz2 |
re PR fortran/37486 (alignment of data in COMMON blocks)
2008-09-22 Janus Weil <janus@gcc.gnu.org>
PR fortran/37486
* gfortran.h (gfc_option_t): New members flag_align_commons and
warn_align_commons.
* lang.opt: New options falign-commons and Walign-commons.
* invoke.texi: Documentation for new options.
* options.c (gfc_init_options): Initialize new options.
(gfc_handle_options): Handle new options.
* trans-common.c (translate_common): Implement new options.
(gfc_trans_common): Set correct locus.
2008-09-22 Janus Weil <janus@gcc.gnu.org>
PR fortran/37486
* gfortran.dg/common_align_1.f90: New.
* gfortran.dg/warn_align_commons.f90: New.
From-SVN: r140546
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/common_align_1.f90 | 22 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/warn_align_commons.f90 | 14 |
3 files changed, 42 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e9b7422..9029ec5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2008-09-22 Janus Weil <janus@gcc.gnu.org> + + PR fortran/37486 + * gfortran.dg/common_align_1.f90: New. + * gfortran.dg/warn_align_commons.f90: New. + 2008-09-22 Olivier Hainque <hainque@adacore.com> * gnat.dg/volatile3.adb: New test. diff --git a/gcc/testsuite/gfortran.dg/common_align_1.f90 b/gcc/testsuite/gfortran.dg/common_align_1.f90 new file mode 100644 index 0000000..4a6803e --- /dev/null +++ b/gcc/testsuite/gfortran.dg/common_align_1.f90 @@ -0,0 +1,22 @@ +! { dg-do run } +! { dg-options "-fno-align-commons" } + +! PR fortran/37486 +! +! Test for -fno-align-commons. +! +! Contributed by Tobias Burnus <burnus@gcc.gnu.org>. + +subroutine one() + integer :: i + common i + if (i/=5) call abort() +end subroutine one + +program test +integer :: i +real(8) :: r8 +common i, r8 +i = 5 +call one() +end program test diff --git a/gcc/testsuite/gfortran.dg/warn_align_commons.f90 b/gcc/testsuite/gfortran.dg/warn_align_commons.f90 new file mode 100644 index 0000000..d20b710 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/warn_align_commons.f90 @@ -0,0 +1,14 @@ +! { dg-do compile } +! { dg-options "-Wno-align-commons" } + +! PR fortran/37486 +! +! Test for -Wno-align-commons. +! +! Contributed by Janus Weil <janus@gcc.gnu.org>. + +implicit none +integer(kind=4) :: n +real(kind=8) :: p +common /foo/ n,p ! { dg-bogus "padding" } +end |