]> git.ipfire.org Git - thirdparty/gcc.git/commit
Fortran] OpenMP/OpenACC – fix more issues with OPTIONAL
authorTobias Burnus <tobias@codesourcery.com>
Fri, 3 Jan 2020 12:56:46 +0000 (12:56 +0000)
committerTobias Burnus <burnus@gcc.gnu.org>
Fri, 3 Jan 2020 12:56:46 +0000 (13:56 +0100)
commitf760c0c77fe350616da9dbeaea16442b0acfb09c
tree6d9177cabdabfbd46270c97e91ab854a7ac61223
parent1609beddb1bac416456743dff136b486f54a572c
Fortran] OpenMP/OpenACC – fix more issues with OPTIONAL

        gcc/fortran/
        * trans-openmp.c (gfc_omp_check_optional_argument): Always return a
        Boolean expression; handle unallocated/disassociated actual arguments
        as absent if passed to nonallocatable/nonpointer dummy array arguments.
        (gfc_build_cond_assign): Change to assume a Boolean expr not a pointer.
        (gfc_omp_finish_clause, gfc_trans_omp_clauses): Assign NULL to generated
        array-data variable if the argument is absent. Simplify code as
        'present' is now a Boolean expression.

        libgomp/
        * testsuite/libgomp.fortran/optional-map.f90: Add test for
        unallocated/disassociated actual arguments to nonallocatable/nonpointer
        dummy arguments; those are/shall be regarded as absent arguments.
        * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
        * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.

From-SVN: r279858
gcc/fortran/ChangeLog
gcc/fortran/trans-openmp.c
libgomp/ChangeLog
libgomp/testsuite/libgomp.fortran/optional-map.f90
libgomp/testsuite/libgomp.fortran/use_device_ptr-optional-2.f90
libgomp/testsuite/libgomp.fortran/use_device_ptr-optional-3.f90 [new file with mode: 0644]