diff options
author | upstream source tree <ports@midipix.org> | 2015-03-15 20:14:05 -0400 |
---|---|---|
committer | upstream source tree <ports@midipix.org> | 2015-03-15 20:14:05 -0400 |
commit | 554fd8c5195424bdbcabf5de30fdc183aba391bd (patch) | |
tree | 976dc5ab7fddf506dadce60ae936f43f58787092 /gcc/testsuite/gfortran.dg/print_fmt_5.f90 | |
download | cbb-gcc-4.6.4-upstream.tar.bz2 cbb-gcc-4.6.4-upstream.tar.xz |
obtained gcc-4.6.4.tar.bz2 from upstream website;upstream
verified gcc-4.6.4.tar.bz2.sig;
imported gcc-4.6.4 source tree from verified upstream tarball.
downloading a git-generated archive based on the 'upstream' tag
should provide you with a source tree that is binary identical
to the one extracted from the above tarball.
if you have obtained the source via the command 'git clone',
however, do note that line-endings of files in your working
directory might differ from line-endings of the respective
files in the upstream repository.
Diffstat (limited to 'gcc/testsuite/gfortran.dg/print_fmt_5.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/print_fmt_5.f90 | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/print_fmt_5.f90 b/gcc/testsuite/gfortran.dg/print_fmt_5.f90 new file mode 100644 index 000000000..fb37d7539 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/print_fmt_5.f90 @@ -0,0 +1,45 @@ +! { dg-do compile } +! print_fmt_5.f90 +! Test of fix for PR28237 and the last bit of PR23420. See +! below for the description of the problem. +! +program r + character(12) :: for = '(i5)', left = '(i', right = ')' + integer :: i, j + integer :: h(4) & + = (/1h(, 1hi, 1h5, 1h)/)! { dg-warning "HOLLERITH|Hollerith" } + namelist /mynml/ i + i = fact () +! +! All these are "legal" things to do; note however the warnings +! for extensions or obsolete features! +! + print *, fact() + print 100, fact() + print '(i5)', fact() + print mynml ! { dg-warning "is an extension" } + do i = 1, 5 + print trim(left)//char(iachar('0') + i)//trim(right), i + end do + assign 100 to i ! { dg-warning "ASSIGN statement" } + print i, fact() ! { dg-warning "ASSIGNED variable" } + print h, fact () ! { dg-warning "Non-character in FORMAT" } +! +! These are not and caused a segfault in trans-io:560 +! +! PR28237 + print fact() ! { dg-error "not an ASSIGNED variable" } +! original PR23420 + print precision(1.2_8) ! { dg-error "type default CHARACTER" } +! PR23420 points 4 and 5 + print j + j ! { dg-error "not an ASSIGNED variable" } +! An extension of the above, encountered in writing the fix + write (*, fact())! { dg-error "not an ASSIGNED variable" } + 100 format (i5) +contains + function fact() + integer :: fact + fact = 1 + end function fact +end + |