mirror of
https://github.com/github/codeql.git
synced 2025-12-24 04:36:35 +01:00
Merge pull request #14745 from github/alexdenisov/parameter-packs-db-upgrade
Swift: parameter packs migration scripts
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
class Element extends @element {
|
||||
string toString() { none() }
|
||||
}
|
||||
|
||||
query predicate new_unspecified_elements(Element e, string property, string error) {
|
||||
unspecified_elements(e, property, error)
|
||||
or
|
||||
error = "Removed parameter packs during the database downgrade" and
|
||||
property = "" and
|
||||
(
|
||||
pack_element_exprs(e, _) or
|
||||
pack_expansion_exprs(e, _) or
|
||||
pack_element_types(e, _) or
|
||||
pack_expansion_types(e, _, _) or
|
||||
pack_types(e) or
|
||||
element_archetype_types(e)
|
||||
)
|
||||
}
|
||||
|
||||
query predicate new_unspecified_element_children(Element e, int index, Element child) {
|
||||
unspecified_element_children(e, index, child)
|
||||
or
|
||||
pack_element_exprs(e, child) and index = 0
|
||||
or
|
||||
pack_expansion_exprs(e, child) and index = 0
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,14 @@
|
||||
description: Replacing types and expressions related to parameter packs
|
||||
compatibility: partial
|
||||
|
||||
unspecified_elements.rel: run downgrade.ql new_unspecified_elements
|
||||
unspecified_element_children.rel: run downgrade.ql new_unspecified_element_children
|
||||
|
||||
pack_element_exprs.rel: delete
|
||||
pack_expansion_exprs.rel: delete
|
||||
|
||||
pack_element_types.rel: delete
|
||||
pack_expansion_types.rel: delete
|
||||
pack_types.rel: delete
|
||||
pack_type_elements.rel: delete
|
||||
element_archetype_types.rel: delete
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,2 @@
|
||||
description: Added parameter pack extraction
|
||||
compatibility: partial
|
||||
Reference in New Issue
Block a user