aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Semantics/check-allocate.cpp
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2025-01-09 18:49:54 +0900
committerNAKAMURA Takumi <geek4civic@gmail.com>2025-01-09 18:49:54 +0900
commite2810c9a248f4c7fbfae84bb32b6f7e01027458b (patch)
treeae0b02a8491b969a1cee94ea16ffe42c559143c5 /flang/lib/Semantics/check-allocate.cpp
parentfa04eb4af95c1ca7377279728cb004bcd2324d01 (diff)
parentbdcf47e4bcb92889665825654bb80a8bbe30379e (diff)
downloadllvm-users/chapuni/cov/single/switch.zip
llvm-users/chapuni/cov/single/switch.tar.gz
llvm-users/chapuni/cov/single/switch.tar.bz2
Merge branch 'users/chapuni/cov/single/base' into users/chapuni/cov/single/switchusers/chapuni/cov/single/switch
Diffstat (limited to 'flang/lib/Semantics/check-allocate.cpp')
-rw-r--r--flang/lib/Semantics/check-allocate.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/flang/lib/Semantics/check-allocate.cpp b/flang/lib/Semantics/check-allocate.cpp
index 1e54123..223bee6 100644
--- a/flang/lib/Semantics/check-allocate.cpp
+++ b/flang/lib/Semantics/check-allocate.cpp
@@ -616,9 +616,11 @@ bool AllocationCheckerHelper::RunChecks(SemanticsContext &context) {
}
if (allocateInfo_.gotPinned) {
std::optional<common::CUDADataAttr> cudaAttr{GetCUDADataAttr(ultimate_)};
- if (!cudaAttr || *cudaAttr != common::CUDADataAttr::Pinned) {
+ if ((!cudaAttr || *cudaAttr != common::CUDADataAttr::Pinned) &&
+ context.languageFeatures().ShouldWarn(
+ common::UsageWarning::CUDAUsage)) {
context.Say(name_.source,
- "Object in ALLOCATE must have PINNED attribute when PINNED option is specified"_err_en_US);
+ "Object in ALLOCATE should have PINNED attribute when PINNED option is specified"_warn_en_US);
}
}
if (allocateInfo_.gotStream) {