Skip to content

C++: Rename resolve to resolveClass, and remove unused isElement #95

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Aug 23, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Class.qll
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import semmle.code.cpp.Type
import semmle.code.cpp.UserType
import semmle.code.cpp.metrics.MetricClass
import semmle.code.cpp.Linkage
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A class type [N4140 9].
Expand Down
4 changes: 2 additions & 2 deletions cpp/ql/src/semmle/code/cpp/Element.qll
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import semmle.code.cpp.Location
private import semmle.code.cpp.Enclosing
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* Get the `@element` that represents this `@element`.
Expand All @@ -10,7 +10,7 @@ private import semmle.code.cpp.internal.Type
*/
private cached @element resolveElement(@element e) {
if isClass(e)
then result = resolve(e)
then result = resolveClass(e)
else result = e
}

Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Enum.qll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import semmle.code.cpp.Type
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ enum [N4140 7.2].
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/FriendDecl.qll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import semmle.code.cpp.Declaration
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C++ friend declaration [N4140 11.3].
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Function.qll
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import semmle.code.cpp.Parameter
import semmle.code.cpp.exprs.Call
import semmle.code.cpp.metrics.MetricFunction
import semmle.code.cpp.Linkage
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ function [N4140 8.3.5]. Both member functions and non-member
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/ObjectiveC.qll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import semmle.code.cpp.Class
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* DEPRECATED: Objective-C is no longer supported.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Parameter.qll
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import semmle.code.cpp.Location
import semmle.code.cpp.Declaration
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ function parameter or catch block parameter.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Specifier.qll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import semmle.code.cpp.Element
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ specifier: `friend`, `auto`, `register`, `static`, `extern`,
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Type.qll
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import semmle.code.cpp.Element
import semmle.code.cpp.Member
import semmle.code.cpp.Function
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ type.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/TypedefType.qll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import semmle.code.cpp.Type
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ typedef type. See 4.9.1.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/UserType.qll
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import semmle.code.cpp.Declaration
import semmle.code.cpp.Type
import semmle.code.cpp.Member
import semmle.code.cpp.Function
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ user-defined type. Examples include `Class`, `Struct`, `Union`,
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/Variable.qll
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import semmle.code.cpp.Element
import semmle.code.cpp.exprs.Access
import semmle.code.cpp.Initializer
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ variable.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/exprs/Cast.qll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import semmle.code.cpp.exprs.Expr
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ cast expression or similar unary expression that doesn't affect the logical value of its operand.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/exprs/Expr.qll
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

import semmle.code.cpp.Element
private import semmle.code.cpp.Enclosing
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ expression.
Expand Down
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/exprs/ObjectiveC.qll
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import semmle.code.cpp.exprs.Expr
import semmle.code.cpp.Class
import semmle.code.cpp.ObjectiveC
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* DEPRECATED: Objective-C is no longer supported.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ cached private module Cached {
* multiple complete classes have the same name, this predicate may have
* multiple results.
*/
cached @usertype resolve(@usertype c) {
cached @usertype resolveClass(@usertype c) {
hasCompleteTwin(c, result)
or
(not hasCompleteTwin(c, _) and result = c)
Expand All @@ -48,8 +48,4 @@ cached private module Cached {
(usertypes(t,_,1) or usertypes(t,_,2) or usertypes(t,_,3) or usertypes(t,_,6)
or usertypes(t,_,10) or usertypes(t,_,11) or usertypes(t,_,12))
}

cached predicate isElement(@element e) {
isClass(e) implies e = resolve(_)
}
}
2 changes: 1 addition & 1 deletion cpp/ql/src/semmle/code/cpp/stmts/Stmt.qll
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import semmle.code.cpp.Element
private import semmle.code.cpp.Enclosing
private import semmle.code.cpp.internal.Type
private import semmle.code.cpp.internal.ResolveClass

/**
* A C/C++ statement.
Expand Down