Skip to content

Commit b185cc8

Browse files
committed
C++: Factor out transparent conversions in their own predicate
1 parent e68d101 commit b185cc8

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedExpr.qll

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -909,17 +909,17 @@ class TranslatedTransparentUnaryOperation extends TranslatedTransparentExpr {
909909
}
910910
}
911911

912+
private predicate isTransparentConversion(Conversion expr) {
913+
expr instanceof ParenthesisExpr or
914+
expr instanceof ReferenceDereferenceExpr or
915+
expr instanceof ReferenceToExpr or
916+
expr instanceof C11GenericExpr
917+
}
918+
912919
class TranslatedTransparentConversion extends TranslatedTransparentExpr {
913920
override Conversion expr;
914921

915-
TranslatedTransparentConversion() {
916-
(
917-
expr instanceof ParenthesisExpr or
918-
expr instanceof ReferenceDereferenceExpr or
919-
expr instanceof ReferenceToExpr or
920-
expr instanceof C11GenericExpr
921-
)
922-
}
922+
TranslatedTransparentConversion() { isTransparentConversion(expr) }
923923

924924
override TranslatedExpr getOperand() { result = getTranslatedExpr(expr.getExpr()) }
925925
}

0 commit comments

Comments
 (0)