================
@@ -5177,6 +5190,17 @@ static std::pair<ValueDecl *, bool> getPrivateItem(Sema
&S, Expr *&RefExpr,
IsArrayExpr = ArraySubscript;
} else if (auto *OASE = dyn_cast_or_null<ArraySectionExpr>(RefExpr)) {
Expr *Base = OASE->getBase()->IgnoreParenImpCasts();
+ if (S.getLangOpts().OpenMP >= 60 && !AllowAssumedSizeArray &&
+ OASE->getColonLocFirst().isValid() && !OASE->getLength()) {
+ QualType BaseType = ArraySectionExpr::getBaseOriginalType(Base);
+ if (BaseType.isNull() || (!BaseType->isConstantArrayType() &&
+ !BaseType->isVariableArrayType())) {
----------------
ddpagan wrote:
@alexey-bataev - Just following up. Is there an example you can share so that I
can verify this case? As I noted above, I wasn't able to cause any
failure/unexpected behavior. Apologies if I'm missing something obvious here.
https://github.com/llvm/llvm-project/pull/152786
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits