[flang-commits] [flang] 2163e66 - [flang][NFC] Document semantics of an ambiguous/non-portable use case

Peter Klausler via flang-commits flang-commits at lists.llvm.org
Mon Jul 3 11:28:00 PDT 2023


Author: Peter Klausler
Date: 2023-07-03T11:22:14-07:00
New Revision: 2163e662c64f892ef9952f6e57b6cda2f4403479

URL: https://github.com/llvm/llvm-project/commit/2163e662c64f892ef9952f6e57b6cda2f4403479
DIFF: https://github.com/llvm/llvm-project/commit/2163e662c64f892ef9952f6e57b6cda2f4403479.diff

LOG: [flang][NFC] Document semantics of an ambiguous/non-portable use case

We intentionally process NAMELIST groups in a scope after having
resolved all of the names in that scope.  This means that a name
whose first appearance in a scope is in the NAMELIST group resolves
to a local object, if any, rather than to any host associated object.
The standard is unclear on this point, and there is no clear
precedent in other compilers.

This patch doesn't implement this choice -- that was done long ago --
but just documents the behavior in Extensions.md.

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

Added: 
    

Modified: 
    flang/docs/Extensions.md

Removed: 
    


################################################################################
diff  --git a/flang/docs/Extensions.md b/flang/docs/Extensions.md
index a422b2c7eb0a49..eb885b3aaeb785 100644
--- a/flang/docs/Extensions.md
+++ b/flang/docs/Extensions.md
@@ -581,6 +581,13 @@ end module
 * F18 allows `OPTIONAL` dummy arguments to interoperable procedures
   unless they are `VALUE` (C865).
 
+* F18 processes the `NAMELIST` group declarations in a scope after it
+  has resolved all of the names in that scope.  This means that names
+  that appear before their local declarations do not resolve to host
+  associated objects and do not elicit errors about improper redeclarations
+  of implicitly typed entities.
+
+
 ## De Facto Standard Features
 
 * `EXTENDS_TYPE_OF()` returns `.TRUE.` if both of its arguments have the


        


More information about the flang-commits mailing list