Skip to content

Commit 54b6c6f

Browse files
committed
Swift: make AnyGenericType::getDecl's type more specific
As shown by the extractor's code not needing any change, the DB values already had that more specific type, which is why the upgrade/downgrade scripts are actually no-ops.
1 parent de1ecf9 commit 54b6c6f

File tree

11 files changed

+10420
-9
lines changed

11 files changed

+10420
-9
lines changed

swift/downgrades/0c4c904720f88c527e7d896d6a334b6abdd3e32f/old.dbscheme

Lines changed: 2603 additions & 0 deletions
Large diffs are not rendered by default.

swift/downgrades/0c4c904720f88c527e7d896d6a334b6abdd3e32f/swift.dbscheme

Lines changed: 2598 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
description: Revert making the type of AnyGenericType::getDecl more specific
2+
compatibility: full

swift/ql/.generated.list

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -385,7 +385,7 @@ ql/lib/codeql/swift/generated/OtherAvailabilitySpec.qll 0e26a203b26ff0581b7396b0
385385
ql/lib/codeql/swift/generated/ParentChild.qll adf8af53ce18086eb28e5fe204ad2089f2ab516622c16055ccfdd1335f5ac72b 6f7464ecd8ca04b6aa261139b36a162e5b0636237d514b8431ef4f97a1c603dc
386386
ql/lib/codeql/swift/generated/PlatformVersionAvailabilitySpec.qll f82d9ca416fe8bd59b5531b65b1c74c9f317b3297a6101544a11339a1cffce38 7f5c6d3309e66c134107afe55bae76dfc9a72cb7cdd6d4c3706b6b34cee09fa0
387387
ql/lib/codeql/swift/generated/PureSynthConstructors.qll 173c0dd59396a1de26fe870e3bc2766c46de689da2a4d8807cb62023bbce1a98 173c0dd59396a1de26fe870e3bc2766c46de689da2a4d8807cb62023bbce1a98
388-
ql/lib/codeql/swift/generated/Raw.qll 30813233f18677b073e78713fbf144cd6e85a2fcafcd7bb29573f1ac1915784e 7c63093ca4f7643567151516341f4ba74f935813928b6af274b19d44d0f24941
388+
ql/lib/codeql/swift/generated/Raw.qll df9a9211952260c0213dec8f0bc4865f09ad2f88c970099fb0f09e4c86aea7ac ed9d462267df50194d7d2adfff591306eac86b04dfd4ab92a43366f1febe58bb
389389
ql/lib/codeql/swift/generated/Synth.qll af02e0b49fe7b488592687996cc74d9525d4e3fbc9d324820b310b356f4d2612 5c740a660721173e9e4e45eb701d373ca19ff14d61cdaea309b65871e0deea90
390390
ql/lib/codeql/swift/generated/SynthConstructors.qll a1b3ca33017f82124286ccad317a05484fee144fb9c3cdd2e500ce38e5efcec4 a1b3ca33017f82124286ccad317a05484fee144fb9c3cdd2e500ce38e5efcec4
391391
ql/lib/codeql/swift/generated/UnknownFile.qll 0fcf9beb8de79440bcdfff4bb6ab3dd139bd273e6c32754e05e6a632651e85f6 0fcf9beb8de79440bcdfff4bb6ab3dd139bd273e6c32754e05e6a632651e85f6
@@ -595,7 +595,7 @@ ql/lib/codeql/swift/generated/stmt/WhileStmt.qll 1ac3c3638899386a953905f98f432b7
595595
ql/lib/codeql/swift/generated/stmt/YieldStmt.qll 8b1e8b7b19f94232eb877e1f8956033f6ca51db30d2542642bf3892a20eb1069 87355acc75a95a08e4f2894609c3093321904f62b9033620700ccd4427a9ca70
596596
ql/lib/codeql/swift/generated/type/AnyBuiltinIntegerType.qll a263451163e027c4c4223ec288e090b7e0d399cc46eb962013342bfeac5f6b86 d850ec1ee1902945b172ddd0ecd8884e399e963f939c04bc8bfaadacebdf55a9
597597
ql/lib/codeql/swift/generated/type/AnyFunctionType.qll 28f01d61d199ae6b28800151a923c2c74983aebec6951e6945973292a7d774b1 473b5e0067c5809c7927acf3670acc1e4b9f5fdfcda070954b6c108c7efd409a
598-
ql/lib/codeql/swift/generated/type/AnyGenericType.qll af3e8060bec6128f3135960da1703a72c51c461e85737b9a336d72910fd33e7a 470e51991d606170482dba555bf4067a442e8fec25706a481ef38bdedb1531b1
598+
ql/lib/codeql/swift/generated/type/AnyGenericType.qll ae127c259d9881f240a9b77fb139f16084af53c29aee9abf1af3bcc698bcd611 4cb9e1d9effc7d829e5bc85455c44e4143a4f288454dd58eb25111cd5c1dd95e
599599
ql/lib/codeql/swift/generated/type/AnyMetatypeType.qll 6805a6895e748e02502105d844b66fab5111dbb0d727534d305a0396dacc9465 58e0794b8d6dccd9809f5b83bf64b162e69f3f84b5f3161b88aed10f16a8ede8
600600
ql/lib/codeql/swift/generated/type/ArchetypeType.qll 3c3d88c43a746b54cd09562756768538675ee1bae31c58fca4b8c6af7ccc8656 6dd41b2a89176342a27d3ffa7abc60dc9e53f2a6c132941fb7c79f9aa1b189db
601601
ql/lib/codeql/swift/generated/type/ArraySliceType.qll 72d0409e2704e89ebca364ae28d55c874152f55dd1deaac6c954617f6566f3c2 72d0409e2704e89ebca364ae28d55c874152f55dd1deaac6c954617f6566f3c2

swift/ql/lib/codeql/swift/generated/Raw.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2143,7 +2143,7 @@ module Raw {
21432143
/**
21442144
* Gets the declaration of this any generic type.
21452145
*/
2146-
Decl getDeclaration() { any_generic_types(this, result) }
2146+
GenericTypeDecl getDeclaration() { any_generic_types(this, result) }
21472147
}
21482148

21492149
class AnyMetatypeType extends @any_metatype_type, Type { }

swift/ql/lib/codeql/swift/generated/type/AnyGenericType.qll

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// generated by codegen/codegen.py
22
private import codeql.swift.generated.Synth
33
private import codeql.swift.generated.Raw
4-
import codeql.swift.elements.decl.Decl
4+
import codeql.swift.elements.decl.GenericTypeDecl
55
import codeql.swift.elements.type.Type
66

77
module Generated {
@@ -35,16 +35,16 @@ module Generated {
3535
* This includes nodes from the "hidden" AST. It can be overridden in subclasses to change the
3636
* behavior of both the `Immediate` and non-`Immediate` versions.
3737
*/
38-
Decl getImmediateDeclaration() {
38+
GenericTypeDecl getImmediateDeclaration() {
3939
result =
40-
Synth::convertDeclFromRaw(Synth::convertAnyGenericTypeToRaw(this)
40+
Synth::convertGenericTypeDeclFromRaw(Synth::convertAnyGenericTypeToRaw(this)
4141
.(Raw::AnyGenericType)
4242
.getDeclaration())
4343
}
4444

4545
/**
4646
* Gets the declaration of this any generic type.
4747
*/
48-
final Decl getDeclaration() { result = getImmediateDeclaration().resolve() }
48+
final GenericTypeDecl getDeclaration() { result = getImmediateDeclaration().resolve() }
4949
}
5050
}

swift/ql/lib/swift.dbscheme

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2028,7 +2028,7 @@ any_function_type_is_async( //dir=type
20282028
#keyset[id]
20292029
any_generic_types( //dir=type
20302030
int id: @any_generic_type ref,
2031-
int declaration: @decl_or_none ref
2031+
int declaration: @generic_type_decl_or_none ref
20322032
);
20332033

20342034
#keyset[id]
@@ -2487,6 +2487,11 @@ variadic_sequence_types( //dir=type
24872487
| @unspecified_element
24882488
;
24892489

2490+
@generic_type_decl_or_none =
2491+
@generic_type_decl
2492+
| @unspecified_element
2493+
;
2494+
24902495
@generic_type_param_decl_or_none =
24912496
@generic_type_param_decl
24922497
| @unspecified_element

0 commit comments

Comments
 (0)