Geoffrey White
e38254c05e
Swift: Fix typo.
2022-07-01 17:00:36 +01:00
Geoffrey White
34ffd1aac5
Swift: Support String.Index and flow through * /.
2022-07-01 14:59:50 +01:00
Geoffrey White
d60d2457c2
Swift: Add String.Index.init as a source as as well.
2022-07-01 14:59:50 +01:00
Geoffrey White
bc03f6959c
Swift: Detect String -> NSString results.
2022-07-01 14:59:50 +01:00
Geoffrey White
a306f312cd
Swift: Add a test of converting Range to NSRange.
2022-07-01 14:59:50 +01:00
Geoffrey White
416977dc50
Swift: Add test cases for removeFirst, removeLast.
2022-07-01 14:59:50 +01:00
Paolo Tranquilli
8addc06799
Swift: add integration test for multiple modules
2022-07-01 15:59:36 +02:00
Paolo Tranquilli
227dad8bf5
Merge main into redsun82/swift-extraction
2022-07-01 15:56:23 +02:00
Paolo Tranquilli
f9143f7855
Swift: fix extraction of empty files
2022-07-01 15:43:16 +02:00
Paolo Tranquilli
3a975174c3
Swift: extract ImportDecl and ModuleDecl
...
As `ASTMangler` crashes when called on `ModuleDecl`, we simply use
its name.
This might probably not work reliably in a scenario where multiple
modules are compiled with the same name (like `main`), but this is left
for future work. At the moment this cannot create DB inconsistencies.
2022-07-01 15:29:30 +02:00
Paolo Tranquilli
7a7440a115
Swift: move createEntry to SwiftDispatcher
2022-07-01 15:22:44 +02:00
Paolo Tranquilli
901e066355
Swift: locally run integration tests
...
Minimal recreations of internal `integration-tests-runner.py` and
`create_database_utils.py` are provided to be able to run the
integration tests on the codeql repository with a released codeql CLI.
For the moment we skip the database checks by default, as we are still
producing inconsistent results.
2022-07-01 15:00:05 +02:00
Paolo Tranquilli
8336c67edb
Merge pull request #9762 from github/alexdenisov/vfs-followup
...
Swift: cleanup
2022-07-01 09:00:54 +02:00
Geoffrey White
68c76006bd
Swift: Allow trivial taint-like flow.
2022-06-30 11:52:57 +01:00
Geoffrey White
0251fb2d35
Swift: Add result annotations to test.
2022-06-30 11:52:44 +01:00
Geoffrey White
2bd25fc589
Swift: Add QLDoc.
2022-06-30 11:52:17 +01:00
Mathias Vorreiter Pedersen
51e3ff9d09
Merge pull request #9736 from github/redsun82/swift-fix-warnings
...
Swift: fix QL warnings about overriding methods
2022-06-30 11:44:44 +01:00
Alex Denisov
5a04d62969
Swift: cleanup extraction
2022-06-30 12:32:03 +02:00
Alex Denisov
133a6caaa3
Swift: cleanup output rewriting code
2022-06-30 12:03:53 +02:00
AlexDenisov
d42b752c6d
Apply suggestions from code review
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-30 11:10:43 +02:00
AlexDenisov
b5c1ec8958
Update swift/extractor/SwiftOutputRewrite.cpp
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-30 11:08:23 +02:00
AlexDenisov
6b0e734c47
Update swift/extractor/SwiftOutputRewrite.cpp
...
Co-authored-by: Paolo Tranquilli <redsun82@github.com >
2022-06-30 11:06:03 +02:00
AlexDenisov
b9f4a09f19
Merge branch 'main' into alexdenisov/swift-multiple-modules
2022-06-30 10:13:34 +02:00
Alex Denisov
1dd3141e2d
Swift: address more code review comments
2022-06-30 08:57:22 +02:00
Alex Denisov
35da75f685
Swift: rename method
2022-06-30 08:48:36 +02:00
AlexDenisov
522d48aa33
Apply suggestions from code review
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-06-30 08:47:17 +02:00
Alex Denisov
5d5f3f82b1
Swift: fix test case
2022-06-30 07:41:28 +02:00
Alex Denisov
5233a5e17b
Swift: also extract imported modules
2022-06-29 17:27:57 +02:00
Paolo Tranquilli
d00fec34c3
Merge pull request #9336 from MathiasVP/swift-decls-in-cfg
...
Swift: CFG for local declarations
2022-06-29 15:10:45 +02:00
Mathias Vorreiter Pedersen
e03646aba4
Merge pull request #9737 from geoffw0/arithmetic
...
Swift: Add ArithmeticOperation.qll library
2022-06-29 13:40:20 +01:00
Mathias Vorreiter Pedersen
f35ab7c292
Swift: Accept test changes to the cfg. These happen due to the fixes in 9e0cf62cda.
2022-06-29 12:20:07 +01:00
Mathias Vorreiter Pedersen
15dc08351e
Merge pull request #9747 from MathiasVP/fix-joins-in-swift-cwe-135
...
Swift: Don't join on index in `swift/string-length-conflation`
2022-06-29 11:58:36 +01:00
Geoffrey White
8b7535af81
Swift: Don't use abstract classes.
2022-06-29 11:49:22 +01:00
Geoffrey White
2cf65c7d35
Swift: Autoformat tests.
2022-06-29 11:49:21 +01:00
Geoffrey White
822002d37d
Swift: Missing qldoc.
2022-06-29 11:49:20 +01:00
Mathias Vorreiter Pedersen
cc25e2644f
Swift: Don't join on index in 'swift/string-length-conflation'.
2022-06-29 11:40:46 +01:00
Mathias Vorreiter Pedersen
4356155eeb
Merge branch 'main' into swift-decls-in-cfg
2022-06-29 10:03:34 +01:00
Alex Denisov
4d81206a87
Swift: teach extractor to emit build artifacts for later consumption
2022-06-29 10:58:24 +02:00
AlexDenisov
1997d6b18c
Merge pull request #9745 from github/alexdenisov/put-traps-into-a-temp-folder
...
Swift: store TRAP files in a temporary folder until the extraction is complete
2022-06-29 10:55:27 +02:00
Jeroen Ketema
55e052af26
Merge pull request #9686 from aschackmull/dataflow/no-node-scan
...
Dataflow performance: Avoid node scans
2022-06-29 10:38:56 +02:00
AlexDenisov
e1ef637c54
Update swift/extractor/SwiftExtractorConfiguration.h
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2022-06-29 10:16:14 +02:00
AlexDenisov
968ede3d4a
Merge pull request #9746 from github/alexdenisov/add-test-case-showing-modules-loading-issue
...
Swift: add a test case showing module loading problem
2022-06-29 10:07:56 +02:00
Paolo Tranquilli
296b8cb630
Merge pull request #9719 from github/redsun82/swift-enum-is-case
...
Swift: add EnumIsCase test
2022-06-29 09:55:20 +02:00
Alex Denisov
57811a4efc
Swift: add a test case showing module loading problem
...
Extractor fails to load separate modules that were built by another
version of an actual compiler.
2022-06-29 07:38:18 +02:00
Alex Denisov
488befb577
Swift: store TRAP files in a temporary folder until the extraction is complete
...
Currently, we have a number of assertions in the codebase and certain
assumptions about the AST. These don't always hold, sometimes leading to
a crash in the extractor.
The crashes leave incomplete TRAP files that cannot be imported into the
database.
With this change, we still get those incomplete TRAP files, but we also
get a database in the end (even thoough it is also incomplete as we
cannot import everything).
2022-06-29 07:17:06 +02:00
Mathias Vorreiter Pedersen
c2e57c3c9b
Swift: Fix 'kind' in 'swift/string-length-conflation'.
2022-06-28 22:33:28 +01:00
Mathias Vorreiter Pedersen
1a7f5db8e2
Swift: Set 'swift/string-length-conflation' to precision high and delete the placeholder query.
2022-06-28 17:01:06 +01:00
Mathias Vorreiter Pedersen
f2ae73b6be
Merge pull request #9738 from geoffw0/misc
...
Swift: Add a Locatable.getFile() shortcut similar to the one in CPP.
2022-06-28 16:44:02 +01:00
Mathias Vorreiter Pedersen
677f6dafcd
Merge pull request #9732 from github/redsun82/swift-dot-syntax-call-expr
...
Swift: add DotSyntaxCallExpr tests
2022-06-28 16:09:10 +01:00
Geoffrey White
ff06e3cb6b
Swift: Add a Locatable.getFile() shortcut similar to the one in CPP.
2022-06-28 15:49:49 +01:00