================ @@ -2261,6 +2261,23 @@ void Sema::checkTypeSupport(QualType Ty, SourceLocation Loc, ValueDecl *D) { } } } + + if (auto *VT = Ty->getAs<VectorType>(); + VT && FD && + (VT->getVectorKind() == VectorKind::SveFixedLengthData || + VT->getVectorKind() == VectorKind::SveFixedLengthPredicate) && + (LangOpts.VScaleMin != LangOpts.VScaleStreamingMin || + LangOpts.VScaleMax != LangOpts.VScaleStreamingMax)) { + if (IsArmStreamingFunction(FD, /*IncludeLocallyStreaming=*/true)) { + Diag(Loc, diag::err_sve_fixed_vector_in_streaming_function) << Ty << 0; + } else if (const auto *FTy = FD->getType()->getAs<FunctionProtoType>()) { + if (FTy->getAArch64SMEAttributes() & + FunctionType::SME_PStateSMCompatibleMask) { + Diag(Loc, diag::err_sve_fixed_vector_in_streaming_function) + << Ty << 1; ---------------- sdesmalen-arm wrote:
nit: ```suggestion << Ty << /*StreamingCompatible*/ 1; ``` https://github.com/llvm/llvm-project/pull/144611 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits