From 95803623323fdb012f85b0f0d5538a6884b4caeb Mon Sep 17 00:00:00 2001 From: Joe Farebrother Date: Thu, 27 May 2021 15:05:42 +0100 Subject: [PATCH] Fixes for resolution and consistency query --- ql/src/codeql_ql/ast/internal/Type.qll | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ql/src/codeql_ql/ast/internal/Type.qll b/ql/src/codeql_ql/ast/internal/Type.qll index 6b539d16223..0e936e80af7 100644 --- a/ql/src/codeql_ql/ast/internal/Type.qll +++ b/ql/src/codeql_ql/ast/internal/Type.qll @@ -180,7 +180,7 @@ private predicate qualifier(TypeExpr te, FileOrModule m, boolean public) { public = true and m = te.getModule().getResolvedModule() ) else ( (public = true or public = false) and - m = getEnclosingModule(te) + m = getEnclosingModule(te).getEnclosing*() ) } @@ -213,8 +213,6 @@ private predicate defines(FileOrModule m, string name, Type t, boolean public) { public = getPublicBool(im) and defines(im.getResolvedModule(), name, t, true) ) - or - defines(m.getEnclosing(), name, t, public) } module TyConsistency { @@ -224,7 +222,7 @@ module TyConsistency { } query predicate multipleResolve(TypeExpr te, int c, Type t) { - c = strictcount(Type t0 | resolveTypeExpr(te, t)) and + c = strictcount(Type t0 | resolveTypeExpr(te, t0)) and c > 1 and resolveTypeExpr(te, t) }