[all-commits] [llvm/llvm-project] 0fcda9: [flang] Admit NULL() in generic procedure resoluti...

Peter Klausler via All-commits all-commits at lists.llvm.org
Thu Oct 14 16:23:13 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0fcda9ae5757dc48f3b7ee668e4a59c5749447e7
      https://github.com/llvm/llvm-project/commit/0fcda9ae5757dc48f3b7ee668e4a59c5749447e7
  Author: peter klausler <pklausler at nvidia.com>
  Date:   2021-10-14 (Thu, 14 Oct 2021)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Semantics/expression.h
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/resolve63.f90

  Log Message:
  -----------
  [flang] Admit NULL() in generic procedure resolution cases

Semantics is rejecting valid programs with NULL() actual arguments
to generic interfaces, including user-defined operators.  Subclause
16.9.144(para 6) makes clear that NULL() can be a valid actual
argument to a generic interface so long as it does not produce
ambiguity.  This patch handles those cases, revises existing
tests, and adjust an error message about NULL() operands to
appear less like a blanket prohibition.

Differential Revision: https://reviews.llvm.org/D111850




More information about the All-commits mailing list