[PATCH] D71166: Deprecate the hasDefaultArgument matcher
Stephen Kelly via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 10 12:56:23 PST 2019
This revision was automatically updated to reflect the committed changes.
Closed by commit rG3e315ba2547c: Deprecate the hasDefaultArgument matcher (authored by stephenkelly).
Changed prior to commit:
https://reviews.llvm.org/D71166?vs=232711&id=233177#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71166/new/
https://reviews.llvm.org/D71166
Files:
clang/include/clang/ASTMatchers/ASTMatchers.h
Index: clang/include/clang/ASTMatchers/ASTMatchers.h
===================================================================
--- clang/include/clang/ASTMatchers/ASTMatchers.h
+++ clang/include/clang/ASTMatchers/ASTMatchers.h
@@ -6544,6 +6544,20 @@
/// void x(int val) {}
/// void y(int val = 0) {}
/// \endcode
+///
+/// Deprecated. Use hasInitializer() instead to be able to
+/// match on the contents of the default argument. For example:
+///
+/// \code
+/// void x(int val = 7) {}
+/// void y(int val = 42) {}
+/// \endcode
+/// parmVarDecl(hasInitializer(integerLiteral(equals(42))))
+/// matches the parameter of y
+///
+/// A matcher such as
+/// parmVarDecl(hasInitializer(anything()))
+/// is equivalent to parmVarDecl(hasDefaultArgument()).
AST_MATCHER(ParmVarDecl, hasDefaultArgument) {
return Node.hasDefaultArg();
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71166.233177.patch
Type: text/x-patch
Size: 838 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20191210/4fa54bad/attachment.bin>
More information about the cfe-commits
mailing list