aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorJanus Weil <janus@gcc.gnu.org>2008-09-22 13:45:02 +0200
committerJanus Weil <janus@gcc.gnu.org>2008-09-22 13:45:02 +0200
commitf613cea7fc41d8133a083ced6cc0a11b9312f110 (patch)
tree5ace57c212233d9f04bcb96b875d8137f2545d01 /gcc/testsuite
parent22868cbf560231317a5c82348c08d396fa29f471 (diff)
downloadgcc-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/ChangeLog6
-rw-r--r--gcc/testsuite/gfortran.dg/common_align_1.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/warn_align_commons.f9014
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