Skip to content

[Flang][OpenMP] Compilation error when local-name of rename-list written in USE statement is specified as intrinsic_procedure_name in REDUCTION clause #68654

Closed
@ohno-fj

Description

@ohno-fj
Version of flang-new : 18.0.0(cc627828f5176c6d75a25f1756d387d18539c1fb)

If local-name (ren) of rename-list written in USE statement is specified as intrinsic_procedure_name in REDUCTION clause, a compilation error occurs.
If intrinsic_procedure_name is changed to max instead of ren, a compilation terminates normally.

The following are the test program, Flang-new, Gfortran and ifort compilation result.

snggz888_.f90:

module m1
  intrinsic max
end module m1
program main
  use m1, ren=>max
  n=0
!$omp parallel do reduction(ren:n)
  do i=1,100
     n=max(n,i)
  end do
  if (n/=100) print *,101
  print *,'pass'
end program main
$ flang-new snggz888_.f90 -fopenmp
error: Semantic errors in snggz888_.f90
./snggz888_.f90:7:19: error: Invalid reduction identifier in REDUCTION clause.
  !$omp parallel do reduction(ren:n)
                    ^^^^^^^^^^^^^^^^
$
$ gfortran snggz888_.f90 -fopenmp
$
$ ifort snggz888_.f90 -qopenmp
 pass
$

Metadata

Metadata

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions