aboutsummaryrefslogtreecommitdiff
path: root/libc/src/wchar/wcrtomb.cpp
diff options
context:
space:
mode:
authorKrzysztof Parzyszek <Krzysztof.Parzyszek@amd.com>2026-02-04 07:20:20 -0600
committerGitHub <noreply@github.com>2026-02-04 07:20:20 -0600
commit7ccdc06780b05bd8f31c20a9734fca2fbf275d7f (patch)
tree40d6b89492e92ba188075ed1acb38d3a3dc77efe /libc/src/wchar/wcrtomb.cpp
parent890cdbe65358eb137788ea5d3a8007ec238be26b (diff)
downloadllvm-main.zip
llvm-main.tar.gz
llvm-main.tar.bz2
[flang][OpenMP] Leave local automatic variables alone (#178739)HEADmain
There is code in resolve-directives.cpp that tries to apply DSA flags to symbols encountered inside constructs. This code was written with the assumption that all such symbols will be declared outside of the construct. When a symbol declared in a BLOCK construct nested in a construct was found, the code would attempt to either privatize or share it in the enclosing construct (where the symbol didn't exist) leading to trouble. BLOCK constructs (and thus the possibility of having local variables) was introduced in F2008. The first OpenMP spec that considered F2008 was 5.0, where the behavior of the BLOCK construct was explicitly left unspecified. From OpenMP 5.1 onwards, all local non-static variables are private in the construct enclosing the declaration. This PR extends this behavior retroactively to all prior OpenMP versions. Fixes https://github.com/llvm/llvm-project/issues/178613
Diffstat (limited to 'libc/src/wchar/wcrtomb.cpp')
0 files changed, 0 insertions, 0 deletions