From 434d9e54a18c011445cf01cfa929a6720f08471a Mon Sep 17 00:00:00 2001 From: Nick Rolfe Date: Thu, 18 Mar 2021 14:48:08 +0000 Subject: [PATCH] Fix complex symbols having multiple ControlFlowTree implementations --- .../controlflow/internal/ControlFlowGraphImpl.qll | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ql/src/codeql_ruby/controlflow/internal/ControlFlowGraphImpl.qll b/ql/src/codeql_ruby/controlflow/internal/ControlFlowGraphImpl.qll index 4a551dddd86..613b8687596 100644 --- a/ql/src/codeql_ruby/controlflow/internal/ControlFlowGraphImpl.qll +++ b/ql/src/codeql_ruby/controlflow/internal/ControlFlowGraphImpl.qll @@ -969,7 +969,7 @@ module Trees { } } - private class MethodNameTree extends LeafTree, MethodName { } + private class MethodNameTree extends LeafTree, MethodName, ASTInternal::TTokenMethodName { } private class MethodTree extends BodyStmtTree, PostOrderTree, Method { final override predicate first(AstNode first) { first = this } @@ -1276,6 +1276,10 @@ module Trees { override predicate isHidden() { any() } } + private class StringEscapeSequenceComponentTree extends LeafTree, StringEscapeSequenceComponent { + override predicate isHidden() { any() } + } + private class StringlikeLiteralTree extends StandardPostOrderTree, StringlikeLiteral { StringlikeLiteralTree() { not this instanceof HereDoc }