================
@@ -698,6 +704,31 @@ void CIRGenModule::constructFunctionArgumentAttributes(
builder.getI64IntegerAttr(
getNaturalPointeeTypeAlignment(argType).getQuantity()));
}
+
+ // Source-level parameter attributes (restrict, nonnull) require
+ // ParmVarDecl access since canonical types strip restrict.
+ if (fd && argType->isPointerType()) {
+ unsigned srcIdx = info.isInstanceMethod() ? argNo - 1 : argNo;
----------------
adams381 wrote:
Restructured -- built a parallel SmallVector<const ParmVarDecl *> aligned with
argAttrs, added it to zip_equal. No more index arithmetic. Also updated
new-delete-deactivation.cpp for nonnull on operator new calls.
https://github.com/llvm/llvm-project/pull/188281
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits