Test case that requires 4 GB RAM that exercises eoshift0:
program main
implicit none
integer(1) :: line(2_8**31+10)
line = 42
line = eoshift(line, 2_8**31+7)
print *, line(1:4)
print *, line((ubound(line, 1, kind=8)-4):ubound(line, 1, kind=8))
end program main
Before patch:
❯ ./a.out
0 0 0 0
42 42 42 42 42
With patch:
❯ ./a.out
42 42 42 0
0 0 0 0 0
Regtested on x86_64-pc-linux-gnu.
libgfortran/ChangeLog:
2017-11-22 Janne Blomqvist <jb@gcc.gnu.org>
* intrinsics/eoshift0.c (eoshift0): Make shift an index_type.
* intrinsics/eoshift2.c (eoshift2): Make shift an index_type.
From-SVN: r255077
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| abort.c | Loading commit data... | |
| access.c | Loading commit data... | |
| args.c | Loading commit data... | |
| associated.c | Loading commit data... | |
| c99_functions.c | Loading commit data... | |
| chdir.c | Loading commit data... | |
| chmod.c | Loading commit data... | |
| clock.c | Loading commit data... | |
| cpu_time.c | Loading commit data... | |
| cshift0.c | Loading commit data... | |
| ctime.c | Loading commit data... | |
| date_and_time.c | Loading commit data... | |
| dprod_r8.f90 | Loading commit data... | |
| dtime.c | Loading commit data... | |
| env.c | Loading commit data... | |
| eoshift0.c | Loading commit data... | |
| eoshift2.c | Loading commit data... | |
| erfc_scaled.c | Loading commit data... | |
| erfc_scaled_inc.c | Loading commit data... | |
| etime.c | Loading commit data... | |
| execute_command_line.c | Loading commit data... | |
| exit.c | Loading commit data... | |
| extends_type_of.c | Loading commit data... | |
| f2c_specifics.F90 | Loading commit data... | |
| fnum.c | Loading commit data... | |
| gerror.c | Loading commit data... | |
| getXid.c | Loading commit data... | |
| getcwd.c | Loading commit data... | |
| getlog.c | Loading commit data... | |
| hostnm.c | Loading commit data... | |
| ierrno.c | Loading commit data... | |
| ishftc.c | Loading commit data... | |
| kill.c | Loading commit data... | |
| link.c | Loading commit data... | |
| move_alloc.c | Loading commit data... | |
| mvbits.c | Loading commit data... | |
| pack_generic.c | Loading commit data... | |
| perror.c | Loading commit data... | |
| rand.c | Loading commit data... | |
| random.c | Loading commit data... | |
| rename.c | Loading commit data... | |
| reshape_generic.c | Loading commit data... | |
| reshape_packed.c | Loading commit data... | |
| selected_char_kind.c | Loading commit data... | |
| selected_int_kind.f90 | Loading commit data... | |
| selected_real_kind.f90 | Loading commit data... | |
| signal.c | Loading commit data... | |
| size.c | Loading commit data... | |
| sleep.c | Loading commit data... | |
| spread_generic.c | Loading commit data... | |
| stat.c | Loading commit data... | |
| string_intrinsics.c | Loading commit data... | |
| string_intrinsics_inc.c | Loading commit data... | |
| symlnk.c | Loading commit data... | |
| system.c | Loading commit data... | |
| system_clock.c | Loading commit data... | |
| time.c | Loading commit data... | |
| time_1.h | Loading commit data... | |
| umask.c | Loading commit data... | |
| unlink.c | Loading commit data... | |
| unpack_generic.c | Loading commit data... |