]> git.ipfire.org Git - thirdparty/gcc.git/commit
Fortran : get_environment_variable runtime error PR96486
authorMark Eggleston <markeggleston@gcc.gnu.org>
Mon, 10 Aug 2020 07:07:39 +0000 (08:07 +0100)
committerMark Eggleston <markeggleston@gcc.gnu.org>
Mon, 24 Aug 2020 10:13:11 +0000 (11:13 +0100)
commitde09e7ebc9d5555653745a103eef2b20c7f1dd76
treebbf7e02b3cd07e5352e74e4fd97f3d2e69178fa9
parent259d072067997ab8f55afcf735c91b6740fd0425
Fortran  :  get_environment_variable runtime error PR96486

Runtime error occurs when the type of the value argument is
character(0):  "Zero-length string passed as value...".
The status argument, intent(out), will contain -1 if the value
of the environment is too large to fit in the value argument, this
is the case if the type is character(0) so there is no reason to
produce a runtime error if the value argument is zero length.

2020-08-24  Mark Eggleston  <markeggleston@gcc.gnu.org>

libgfortran/

PR fortran/96486
* intrinsics/env.c: If value_len is > 0 blank the string.
Copy the result only if its length is > 0.

2020-08-24  Mark Eggleston  <markeggleston@gcc.gnu.org>

gcc/testsuite/

PR fortran/96486
* gfortran.dg/pr96486.f90: New test.
gcc/testsuite/gfortran.dg/pr96486.f90 [new file with mode: 0644]
libgfortran/intrinsics/env.c