vsapsai added a comment. Thanks for the reviews! I'm going to address the comments, `check-lldb`, check tests failing on Debian.
================ Comment at: clang/lib/AST/ASTStructuralEquivalence.cpp:1971 + return false; + unsigned SlotsToCheck = NumArgs > 0 ? NumArgs : 1; + for (unsigned I = 0; I < SlotsToCheck; ++I) { ---------------- shafik wrote: > I am curious what case are we catching here? Does `NumArgs` ever have the > value `1`? Here I'm trying to handle the case with argument-less methods. For example, `-(void)test;` has 0 arguments but we still want to compare the first slot. At the moment I don't know how to clarify the code to make the intention clearer. Can add a comment explaining the intention (though there is a test that should catch breaking code accidentally). And to answer your question, `NumArgs` can have value `1`. ================ Comment at: clang/lib/AST/ASTStructuralEquivalence.cpp:1989 + ++ParamT1, ++ParamT2) { + if (!IsStructurallyEquivalent(Context, *ParamT1, *ParamT2)) + return false; ---------------- a_sidorin wrote: > Should we check if the parameter count is different? Mismatch in the number of parameters should be caught by `NumArgs != Selector2.getNumArgs()` earlier. But I think it makes sense to add an assertion verifying `param_size` is equal at this point. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D121176/new/ https://reviews.llvm.org/D121176 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits