[all-commits] [llvm/llvm-project] 8320bc: [flang][semantic] Implement semantic checks and ne...
ivanrodriguez3753 via All-commits
all-commits at lists.llvm.org
Fri Aug 7 14:40:49 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8320bcbb3b17dd46d461a18fddd556608fb17b66
https://github.com/llvm/llvm-project/commit/8320bcbb3b17dd46d461a18fddd556608fb17b66
Author: ivanrodriguez3753 <48269053+ivanrodriguez3753 at users.noreply.github.com>
Date: 2026-08-07 (Fri, 07 Aug 2026)
Changed paths:
M flang/include/flang/Evaluate/expression.h
M flang/include/flang/Evaluate/shape.h
M flang/include/flang/Evaluate/traverse.h
M flang/include/flang/Evaluate/variable.h
M flang/include/flang/Semantics/dump-expr.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/fold-implementation.h
M flang/lib/Evaluate/fold-integer.cpp
M flang/lib/Evaluate/formatting.cpp
M flang/lib/Evaluate/variable.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/Support/Utils.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/resolve-names-utils.cpp
M flang/lib/Semantics/resolve-names-utils.h
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/declaration-explicit-array-bounds.f90
A flang/test/Semantics/modfile-explicit-shape-bounds.f90
A flang/test/Semantics/rank1-bound-element-symbols.f90
M flang/test/Semantics/resolve89.f90
A flang/test/Semantics/unparse-explicit-array-bounds.f90
Log Message:
-----------
[flang][semantic] Implement semantic checks and new data structure for explicit-shape-bounds-spec (#203030)
Since Lower and large parts of Semantics depend on ShapeSpec being a scalar bound, implement a class RankOneBoundElement that does just this. Since there is no syntactic representation for this node kind, have both unparse.cpp and mod-file.cpp emit the original rank-1 integer array expression instead of scalarized versions.
Analyze does semantic checks, then repackages into an array of scalarized ShapeSpec pairs instead of a pair of arrays.
Lower implementation in follow-up stack PR.
Also, fix pre-existing bug where overriding dimension spec in entity-decl throws away and fails to type check the array-spec provided in dimension spec.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list