Skip to content

Commit 878342f

Browse files
committed
Swift: Fix AvailabilitySpec trap generation
1 parent 1b5d15b commit 878342f

22 files changed

+129
-319
lines changed

swift/extractor/translators/StmtTranslator.cpp

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,15 @@ void StmtTranslator::translateAndEmit(const swift::PoundAvailableInfo& availabil
3636
}
3737

3838
void StmtTranslator::translateAndEmit(const swift::AvailabilitySpec& spec) {
39-
// auto entry = dispatcher.createEntry(spec);
40-
// TODO: Swift 6.2 platform version/wildcard
41-
// dispatcher.emit(entry);
39+
auto entry = dispatcher.createEntry(spec);
40+
entry.is_wildcard = spec.isWildcard();
41+
if (!spec.isWildcard()) {
42+
auto domain = spec.getDomainOrIdentifier().getAsDomain();
43+
entry.platform =
44+
swift::platformString(domain ? domain->getPlatformKind() : swift::PlatformKind::none).str();
45+
entry.version = spec.getRawVersion().getAsString();
46+
}
47+
dispatcher.emit(entry);
4248
}
4349

4450
codeql::BraceStmt StmtTranslator::translateBraceStmt(const swift::BraceStmt& stmt) {

swift/ql/.generated.list

Lines changed: 8 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

swift/ql/.gitattributes

Lines changed: 2 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

swift/ql/lib/codeql/swift/elements.qll

Lines changed: 0 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

swift/ql/lib/codeql/swift/elements/OtherAvailabilitySpec.qll

Lines changed: 0 additions & 12 deletions
This file was deleted.

swift/ql/lib/codeql/swift/elements/PlatformVersionAvailabilitySpec.qll

Lines changed: 0 additions & 12 deletions
This file was deleted.

swift/ql/lib/codeql/swift/elements/internal/OtherAvailabilitySpecConstructor.qll renamed to swift/ql/lib/codeql/swift/elements/internal/AvailabilitySpecConstructor.qll

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

swift/ql/lib/codeql/swift/elements/internal/AvailabilitySpecImpl.qll

Lines changed: 7 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

swift/ql/lib/codeql/swift/elements/internal/OtherAvailabilitySpecImpl.qll

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)