================
@@ -2012,20 +2014,17 @@ void CallStackFrame::describe(raw_ostream &Out) const {
 
   Out << '(';
 
-  for (FunctionDecl::param_const_iterator I = Callee->param_begin(),
-       E = Callee->param_end(); I != E; ++I, ++ArgIndex) {
-    if (ArgIndex > (unsigned)IsMemberCall)
-      Out << ", ";
+  llvm::ListSeparator Comma;
+  for (unsigned ArgIndex = ExplicitInstanceParam, N = Callee->getNumParams();
+       ArgIndex != N; ++ArgIndex) {
+    Out << Comma;
 
-    const ParmVarDecl *Param = *I;
-    APValue *V = Info.getParamSlot(Arguments, Param);
+    const ParmVarDecl *Param = Callee->getParamDecl(ArgIndex);
+    const APValue *V = Info.getParamSlot(Arguments, Param);
     if (V)
       V->printPretty(Out, Info.Ctx, Param->getType());
     else
       Out << "<...>";
-
-    if (ArgIndex == 0 && IsMemberCall)
-      Out << "->" << *Callee << '(';
----------------
ojhunt wrote:

I was trying to work out how this was dead code -- setting IsMemberCall to 
false after doing the initial output seems destined to cause confusing bugs 
later on. Given this pr removes the use of IsMemberCall that required it to 
always be false I think that assignment should be removed.

https://github.com/llvm/llvm-project/pull/177551
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to