[PATCH] D54902: [AST][Sema] Remove CallExpr::setNumArgs

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 26 13:05:13 PST 2018


aaron.ballman added inline comments.


================
Comment at: include/clang/AST/ExprCXX.h:168
 public:
-  CXXMemberCallExpr(ASTContext &C, Expr *fn, ArrayRef<Expr*> args,
-                    QualType t, ExprValueKind VK, SourceLocation RP)
-      : CallExpr(C, CXXMemberCallExprClass, fn, args, t, VK, RP) {}
+  CXXMemberCallExpr(ASTContext &C, Expr *fn, ArrayRef<Expr *> args, QualType t,
+                    ExprValueKind VK, SourceLocation RP,
----------------
Since you're already touching the line, can you correct the names `fn`, `args`, and `t` to match our naming conventions?


================
Comment at: include/clang/AST/ExprCXX.h:212
   CUDAKernelCallExpr(ASTContext &C, Expr *fn, CallExpr *Config,
-                     ArrayRef<Expr*> args, QualType t, ExprValueKind VK,
-                     SourceLocation RP)
-      : CallExpr(C, CUDAKernelCallExprClass, fn, Config, args, t, VK, RP) {}
+                     ArrayRef<Expr *> args, QualType t, ExprValueKind VK,
+                     SourceLocation RP, unsigned MinNumArgs = 0)
----------------
Same here.


================
Comment at: lib/AST/Expr.cpp:1272
                    ArrayRef<Expr *> preargs, ArrayRef<Expr *> args, QualType t,
-                   ExprValueKind VK, SourceLocation rparenloc)
+                   ExprValueKind VK, SourceLocation rparenloc,
+                   unsigned MinNumArgs)
----------------
If you want to fix these up as well, feel free.


================
Comment at: lib/Sema/SemaExpr.cpp:5565
+  // Check for a valid function type, but only if it is not a builtin which
+  // requires custom typechecking. These will be handled by
+  // CheckBuiltinFunctionCall below just after creation of the call expression.
----------------
typechecking -> type checking


================
Comment at: lib/Sema/SemaExpr.cpp:5594
+
+  // Get the number of parameter in the function prototype, if any.
+  // We will allocate space for max(Args.size(), NumParams) arguments
----------------
parameter -> parameters


================
Comment at: lib/Sema/SemaExpr.cpp:5607
-      Fn = rewrite.get();
-      TheCall->setCallee(Fn);
-      goto retry;
----------------
Why did this go away?


================
Comment at: lib/Sema/SemaOverload.cpp:12990
   assert(Method && "Member call to something that isn't a method?");
+  const FunctionProtoType *Proto =
+    Method->getType()->getAs<FunctionProtoType>();
----------------
You can use `const auto *` here.


Repository:
  rC Clang

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D54902/new/

https://reviews.llvm.org/D54902





More information about the cfe-commits mailing list