[clang] [CIR] Fix problem with phantom function arguments (PR #140322)

Andy Kaylor via cfe-commits cfe-commits at lists.llvm.org
Fri May 16 17:23:37 PDT 2025


================
@@ -112,8 +112,16 @@ class CIRGenFunctionInfo final
 
   // NOLINTNEXTLINE(readability-identifier-naming)
   void Profile(llvm::FoldingSetNodeID &id) {
-    id.AddBoolean(required.getOpaqueData());
-    getReturnType().Profile(id);
+    // It's unfortunate that we are looping over the arguments twice (here and
+    // in the static Profile function we call from here), but if the Profile
+    // functions get out of sync, we can end up with incorrect function
+    // signatures, and we don't have the argument types in the format that the
----------------
andykaylor wrote:

This problem will be fixed when I refactor the code to eliminate the ArgInfo class, which now contains only the type.

https://github.com/llvm/llvm-project/pull/140322


More information about the cfe-commits mailing list