re PR fortran/87689 (PowerPC64 ELFv2 function parameter passing violation)
authorThomas Koenig <tkoenig@gcc.gnu.org>
Mon, 18 Feb 2019 18:28:58 +0000 (18:28 +0000)
committerThomas Koenig <tkoenig@gcc.gnu.org>
Mon, 18 Feb 2019 18:28:58 +0000 (18:28 +0000)
commit378f53c75232416c9171bcfb42a551371321bffe
treee1b9c5e9aba98b7ee97c1db32ec84d400da32f4e
parent7a247605d892747ccc9216ffc047c73bd688ac36
re PR fortran/87689 (PowerPC64 ELFv2 function parameter passing violation)

2019-02-18  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/87689
    * trans-decl.c (gfc_get_extern_function_decl): Add argument
    actual_args and pass it through to gfc_get_function_type.
    * trans-expr.c (conv_function_val): Add argument actual_args
    and pass it on to gfc_get_extern_function_decl.
    (conv_procedure_call): Pass actual arguments to conv_function_val.
    * trans-types.c (get_formal_from_actual_arglist): New function.
    (gfc_get_function_type): Add argument actual_args.  Generate
    formal args from actual args if necessary.
    * trans-types.h (gfc_get_function_type): Add optional argument.
    * trans.h (gfc_get_extern_function_decl): Add optional argument.

2019-02-18  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/87689
    * gfortran.dg/lto/20091028-1_0.f90: Add -Wno-lto-type-mismatch to
    options.
    * gfortran.dg/lto/20091028-2_0.f90: Likewise.
    * gfortran.dg/lto/pr87689_0.f: New file.
    * gfortran.dg/lto/pr87689_1.f: New file.

From-SVN: r268992
gcc/fortran/ChangeLog
gcc/fortran/trans-decl.c
gcc/fortran/trans-expr.c
gcc/fortran/trans-types.c
gcc/fortran/trans-types.h
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/lto/20091028-1_0.f90
gcc/testsuite/gfortran.dg/lto/20091028-2_0.f90
gcc/testsuite/gfortran.dg/lto/pr87689_0.f [new file with mode: 0644]
gcc/testsuite/gfortran.dg/lto/pr87689_1.f [new file with mode: 0644]