summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Ballman <aaron@aaronballman.com>2019-05-27 14:29:10 +0000
committerAaron Ballman <aaron@aaronballman.com>2019-05-27 14:29:10 +0000
commit1b0ae8f05f1a5f701f14e19bee165ba93cd157ef (patch)
treeee59e22a1023c92579de852d4b2a766c81f30bb3
parente7b3b80fb1254d1599ed9add544a4cf045d7b588 (diff)
downloadbcm5719-llvm-1b0ae8f05f1a5f701f14e19bee165ba93cd157ef.tar.gz
bcm5719-llvm-1b0ae8f05f1a5f701f14e19bee165ba93cd157ef.zip
When dumping the AST to JSON, dump whether a function is variadic or not.
llvm-svn: 361768
-rw-r--r--clang/lib/AST/JSONNodeDumper.cpp2
-rw-r--r--clang/test/AST/ast-dump-expr-json.cpp2
2 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/AST/JSONNodeDumper.cpp b/clang/lib/AST/JSONNodeDumper.cpp
index 760ea338121..08f63fba98c 100644
--- a/clang/lib/AST/JSONNodeDumper.cpp
+++ b/clang/lib/AST/JSONNodeDumper.cpp
@@ -572,6 +572,8 @@ void JSONNodeDumper::VisitFunctionDecl(const FunctionDecl *FD) {
attributeOnlyIfTrue("pure", FD->isPure());
attributeOnlyIfTrue("explicitlyDeleted", FD->isDeletedAsWritten());
attributeOnlyIfTrue("constexpr", FD->isConstexpr());
+ attributeOnlyIfTrue("variadic", FD->isVariadic());
+
if (FD->isDefaulted())
JOS.attribute("explicitlyDefaulted",
FD->isDeleted() ? "deleted" : "default");
diff --git a/clang/test/AST/ast-dump-expr-json.cpp b/clang/test/AST/ast-dump-expr-json.cpp
index 15a93a08a81..c6ccc950e2c 100644
--- a/clang/test/AST/ast-dump-expr-json.cpp
+++ b/clang/test/AST/ast-dump-expr-json.cpp
@@ -4574,6 +4574,7 @@ void TestNonADLCall3() {
// CHECK-NEXT: "qualType": "auto (int, ...) const"
// CHECK-NEXT: },
// CHECK-NEXT: "inline": true,
+// CHECK-NEXT: "variadic": true,
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
// CHECK-NEXT: "id": "0x{{.*}}",
@@ -4673,6 +4674,7 @@ void TestNonADLCall3() {
// CHECK-NEXT: },
// CHECK-NEXT: "storageClass": "static",
// CHECK-NEXT: "inline": true,
+// CHECK-NEXT: "variadic": true,
// CHECK-NEXT: "inner": [
// CHECK-NEXT: {
// CHECK-NEXT: "id": "0x{{.*}}",
OpenPOWER on IntegriCloud