From 068c57acdd46ebbbe94dd3ecdeff24705dd847fa Mon Sep 17 00:00:00 2001 From: Erik Krogh Kristensen Date: Sat, 29 May 2021 08:27:30 +0000 Subject: [PATCH] add super calls to the callgraph --- ql/src/codeql_ql/ast/internal/Predicate.qll | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ql/src/codeql_ql/ast/internal/Predicate.qll b/ql/src/codeql_ql/ast/internal/Predicate.qll index 069dd69974c..96e4b5e5dec 100644 --- a/ql/src/codeql_ql/ast/internal/Predicate.qll +++ b/ql/src/codeql_ql/ast/internal/Predicate.qll @@ -79,6 +79,13 @@ private module Cached { t = mc.getBase().getType() and p = t.getClassPredicate(mc.getMemberName(), mc.getNumberOfArguments()) ) + or + // super calls + exists(Super sup, ClassType type | + mc.getBase() = sup and + sup.getEnclosingPredicate().(ClassPredicate).getParent().getType() = type and + p = type.getASuperType().getClassPredicate(mc.getMemberName(), mc.getNumberOfArguments()) + ) } cached