[all-commits] [llvm/llvm-project] 38763b: [flang] Do not traverse selectors in FindImpureCal...
jeanPerier via All-commits
all-commits at lists.llvm.org
Wed Mar 6 05:29:39 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 38763be6ab706e5661e94b68c3aa2069f4c736d8
https://github.com/llvm/llvm-project/commit/38763be6ab706e5661e94b68c3aa2069f4c736d8
Author: jeanPerier <jperier at nvidia.com>
Date: 2024-03-06 (Wed, 06 Mar 2024)
Changed paths:
M flang/include/flang/Evaluate/traverse.h
M flang/lib/Evaluate/tools.cpp
M flang/test/Semantics/forall01.f90
M flang/test/Semantics/selecttype03.f90
Log Message:
-----------
[flang] Do not traverse selectors in FindImpureCall and HasVectorSubscript (#84041)
In presence of symbols with AssocEntityDetails in an expression,
`Traverse`, `AnyTraverse`, `AllTraverse`, and `SetTraverse`
automatically visit the selector expression or variable.
This is most often the desired behavior but can be surprising, and was
not correct for FindImpureCall and HasVectorSubscript.
Add a default template option to flag the behavior to someone willing to
use the Traverse helper for a new utility, and set this template to
false for FindImpureCall and HasVectorSubscript.
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