aaron.ballman added a comment.

In https://reviews.llvm.org/D42213#982256, @MaskRay wrote:

> I am also not sure about this function:  line 3548
>
>   /// \brief Matches \c FunctionDecls and \c FunctionProtoTypes that have a
>   /// specific parameter count.
>   ///
>   /// Given
>   /// \code
>   ///   void f(int i) {}
>   ///   void g(int i, int j) {}
>   ///   void h(int i, int j);
>   ///   void j(int i);
>   ///   void k(int x, int y, int z, ...);
>   /// \endcode
>   /// functionDecl(parameterCountIs(2))
>   ///   matches void g(int i, int j) {}
>   /// functionProtoType(parameterCountIs(2))
>   ///   matches void h(int i, int j)
>   /// functionProtoType(parameterCountIs(3))
>   ///   matches void k(int x, int y, int z, ...);
>   AST_POLYMORPHIC_MATCHER_P(parameterCountIs,
>                             AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl,
>                                                             
> FunctionProtoType),
>   }
>
>
> Both `functionDecl` and `functionProtoType` match these functions as long as 
> the parameter count is matched.
>
>   % echo 'match functionDecl()'|clang-query =(printf 'void f(){}') -- -xc++
>   % echo 'match functionProtoType()'|clang-query =(printf 'void f(){}') -- 
> -xc++
>


I'm not certain I'm following along. The quoted matcher is for 
`parameterCountIs()`, but the test code you've posted doesn't use that matcher. 
However, the quoted comment seems like it's wrong: 
`functionDecl(parameterCountIs(2))` should match both g() and h(), not just 
g(), I believe.


Repository:
  rC Clang

https://reviews.llvm.org/D42213



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to