[qt/clang/llvm]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm
Pushed by mirror-service into branch 'upstream/users/cchen/flang-metadirective-loop-default-none'.
Changed from 6213796abdf80614731823742190fd4244cb16b2 to e5f3ebe2e8a21877d8b91c4690ffd24c6f16ca04
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.
This change contains the following new commits:
Git commit e5f3ebe2e8a21877d8b91c4690ffd24c6f16ca04 by chichunchen on 17/07/2026 at 03:42..
[flang][OpenMP] Check DEFAULT(NONE) on metadirective loop variants
Standalone metadirectives and their associated loops are separate parse-tree
nodes. For example:
```fortran
!$omp metadirective &
!$omp& when(implementation={vendor(llvm)}: &
!$omp& parallel do default(none) shared(n, a)) default(nothing)
do i = 1, n
a(i) = x
end do
```
Unlike an ordinary PARALLEL DO, the loop is not nested under the directive:
```text
METADIRECTIVE
`-- WHEN
`-- PARALLEL DO DEFAULT(NONE) SHARED(n, a)
DO
`-- a(i) = x
```
Name resolution therefore leaves the variant context before visiting the loop
and does not diagnose the missing data-sharing attribute for `x`.
After associating a metadirective with its loop, validate DEFAULT(NONE) for
each potentially selectable loop variant. Preserve the existing rules for
predetermined and explicit data-sharing attributes, static locals, nested
constructs, specification expressions, and statically inapplicable variants.
Add semantic tests for variant selection and data-sharing behavior.
https://invent.kde.org/qt/clang/llvm/-/commit/e5f3ebe2e8a21877d8b91c4690ffd24c6f16ca04