Paolo Tranquilli
b9c4adee31
Swift: print only toBeTested errors in Errors.ql test
2023-06-14 16:17:44 +02:00
Paolo Tranquilli
75684eebe9
Swift: add 5.8 update QL test
2023-06-14 16:17:44 +02:00
Paolo Tranquilli
396b57696c
Swift: minimal 5.8 compatibility
2023-06-14 16:17:44 +02:00
Owen Mansel-Chan
5f72ce0935
Add stub implementations of flowCheckNodeSpecific
2023-06-14 14:46:35 +01:00
Owen Mansel-Chan
e0f7437d40
Sync dataflow library
2023-06-14 14:29:56 +01:00
Nora Dimitrijević
0db321c724
Merge branch 'main' into swift/brace-stmt-variables
2023-06-14 14:57:46 +02:00
Nora Dimitrijević
77f52e4e01
Swift: better join order fix for NamedPattern.getVarDecl
...
This brings it down to 85ms when run from a query, not just from quick-eval:
```
[2023-06-14 14:47:06] Evaluated non-recursive predicate NamedPattern#1696c0d8::NamedPattern::getVarDecl#0#dispred#ff@04392e6o in 85ms (size: 91309).
Evaluated relational algebra for predicate NamedPattern#1696c0d8::NamedPattern::getVarDecl#0#dispred#ff@04392e6o with tuple counts:
1310544 ~9% {2} r1 = SCAN var_decls OUTPUT In.0, In.1
1209062 ~0% {2} r2 = STREAM DEDUP r1
1209062 ~0% {2} r3 = JOIN r2 WITH Synth#5f134a93::Synth::convertVarDeclToRaw#1#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
91309 ~0% {3} r4 = JOIN r3 WITH VarDecl#914e0d1e::Generated::VarDecl::getImmediateParentPattern#0#dispred#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.0
69599 ~0% {3} r5 = JOIN r4 WITH #Pattern#19b8cf65::Pattern::getImmediateEnclosingPattern#0#dispredPlus#bf_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
160908 ~1% {3} r6 = r4 UNION r5
94246 ~0% {4} r7 = JOIN r6 WITH Synth#5f134a93::Synth::convertNamedPatternToRaw#1#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.0
91309 ~1% {2} r8 = JOIN r7 WITH named_patterns ON FIRST 2 OUTPUT Lhs.3, Lhs.2
return r8
```
2023-06-14 14:52:10 +02:00
Jami
35591113c2
Merge branch 'main' into jcogs33/shared-sink-kind-validation
2023-06-14 08:06:34 -04:00
Michael Nebel
afec9b05e9
Merge pull request #13147 from michaelnebel/csharp/entityframeworkrefactor
...
C#: Use synthetic global in the EntityFramework code instead of jump steps.
2023-06-14 13:47:56 +02:00
Anders Schack-Mulligen
1a4fca334f
Merge pull request #13273 from aschackmull/dataflow/summarynode-refactor
...
Dataflow: Refactor FlowSummaryImpl to synthesize nodes independently from DataFlow::Node.
2023-06-14 09:38:36 +02:00
Alexandre Boulgakov
7280f07611
Merge pull request #13336 from github/sashabu/c++20-todos
...
Swift: Fix some C++20 todos.
2023-06-13 15:25:29 +01:00
Alexandre Boulgakov
f5d6f50851
Merge pull request #13335 from github/sashabu/c++20
...
Build: Bump build mode to C++20.
2023-06-13 15:03:01 +01:00
Anders Schack-Mulligen
2d616d494e
C#/Ruby: Add fields as per review comments.
2023-06-13 11:26:30 +02:00
Paolo Tranquilli
c612a7a16b
Revert "Swift: deduplicate accessors and params correctly"
...
This reverts commit bab4eeeb55 .
2023-06-12 17:14:20 +02:00
Paolo Tranquilli
bab4eeeb55
Swift: deduplicate accessors and params correctly
2023-06-12 16:48:03 +02:00
Jami Cogswell
9abe3e3da4
Shared: use a module as input to 'KindValidation'
2023-06-09 14:35:37 -04:00
Anders Schack-Mulligen
5062442982
Go/Python/Ruby/Swift: Add stub.
2023-06-09 15:39:28 +02:00
Anders Schack-Mulligen
98f51d7f29
Dataflow: Sync.
2023-06-09 15:39:28 +02:00
Anders Schack-Mulligen
b2d3f29ef3
Swift: Fix tests.
2023-06-09 15:39:28 +02:00
Anders Schack-Mulligen
6020e4d0e3
C#/Go/Python/Ruby/Swift: Fix some more references.
2023-06-09 15:30:38 +02:00
Anders Schack-Mulligen
1c3b8e2b96
Swift: Adjust to FlowSummaryImpl changes.
2023-06-09 15:30:38 +02:00
Anders Schack-Mulligen
2cc5bde925
Dataflow: Sync.
2023-06-09 15:27:17 +02:00
Paolo Tranquilli
c42e65cbaf
Merge branch 'main' into alexdenisov+redsun82/tuple-mangling
2023-06-09 14:37:20 +02:00
Anders Schack-Mulligen
d230509905
Dataflow: Address review comments.
2023-06-09 08:37:36 +02:00
Anders Schack-Mulligen
4399138c82
Dataflow: Fix QL4QL alert.
2023-06-09 08:37:36 +02:00
Anders Schack-Mulligen
53f2b8aab0
Dataflow: Sync.
2023-06-09 08:37:36 +02:00
Anders Schack-Mulligen
fd832416d8
Dataflow: Add empty type strengthening predicate for languages without type pruning.
2023-06-09 08:37:35 +02:00
Anders Schack-Mulligen
e8cea79f1d
Dataflow: Sync.
2023-06-09 08:37:35 +02:00
Jami Cogswell
da58b2afc8
Shared: move shared file to 'shared' folder and add parameterized module for 'getInvalidModelKind'
2023-06-08 20:05:27 -04:00
Alexandre Boulgakov
9ec09000e5
Swift: Remove no longer needed code.
2023-06-08 14:52:58 +01:00
Geoffrey White
0a6edd345a
Merge pull request #13405 from geoffw0/swiftloc
...
Swift: Improve SummaryStats.ql
2023-06-08 14:02:03 +01:00
Alexandre Boulgakov
5450585c1c
Swift: Remove SwiftDiagnostic constructor (C++20 todo).
2023-06-08 13:11:14 +01:00
Alexandre Boulgakov
838130ca3a
Swift: Fix some C++20 todos.
2023-06-08 13:11:14 +01:00
Alexandre Boulgakov
5952a729df
Build: Bump build mode to C++20.
2023-06-08 13:10:43 +01:00
Geoffrey White
5727d49cce
Swift: Take out common code for lines of code.
2023-06-08 12:03:03 +01:00
Geoffrey White
a3ef5c6918
Swift: QLDoc Diagnostics.qll.
2023-06-08 12:03:02 +01:00
Geoffrey White
e0f16f46d2
Swift: Add compile errors / warnings to SummaryStats.ql.
2023-06-08 11:48:57 +01:00
Geoffrey White
dc7a286948
Swift: Add lines of code to SummaryStats.ql.
2023-06-08 11:29:04 +01:00
Nora Dimitrijević
a5e0669981
Swift: fix bad join order in NamedPattern.getVarDecl()
...
Ideally the EDB itself should contain a direct
reference from NamedPattern to VarDecl, not just a name,
but oh well, this join order works fine.
BEFORE:
```
[2023-06-08 11:40:01] Evaluated non-recursive predicate quick_eval#ff@60fe07kr in 6533ms (size: 91309).
Evaluated relational algebra for predicate quick_eval#ff@60fe07kr with tuple counts:
1209062 ~3% {2} r1 = SCAN VarDecl#914e0d1e::Generated::VarDecl::getName#0#dispred#ff OUTPUT In.1, In.0
234687793 ~0% {2} r2 = JOIN r1 WITH NamedPattern#c3d26570::Generated::NamedPattern::getName#0#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Rhs.1
19112791 ~0% {3} r3 = JOIN r2 WITH VarDecl#914e0d1e::Generated::VarDecl::getImmediateParentPattern#0#dispred#ff ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1
19112791 ~0% {3} r4 = JOIN r3 WITH Element#e67432df::Generated::Element::resolve#bf ON FIRST 1 OUTPUT Rhs.1, Lhs.2, Lhs.1
24647 ~0% {2} r5 = JOIN r4 WITH Element#d22cfd66::Element::getFullyUnresolved#bf ON FIRST 2 OUTPUT Lhs.1, Lhs.2
19112791 ~0% {3} r6 = JOIN r3 WITH Element#e67432df::Generated::Element::resolve#bf ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
19112791 ~3% {3} r7 = JOIN r6 WITH Element#d22cfd66::Element::getFullyUnresolved#bf ON FIRST 1 OUTPUT Lhs.2, Rhs.1, Lhs.1
66662 ~4% {2} r8 = JOIN r7 WITH #Pattern#19b8cf65::Pattern::getImmediateEnclosingPattern#0#dispredPlus#bf ON FIRST 2 OUTPUT Lhs.0, Lhs.2
91309 ~2% {2} r9 = r5 UNION r8
return r9
```
AFTER:
```
[2023-06-08 11:55:26] Evaluated non-recursive predicate quick_eval#ff@fe906afo in 26ms (size: 91309).
Evaluated relational algebra for predicate quick_eval#ff@fe906afo with tuple counts:
92048 ~0% {3} r1 = SCAN NamedPattern#c3d26570::Generated::NamedPattern::getName#0#dispred#ff OUTPUT In.0, In.1, In.0
82893 ~0% {2} r2 = SCAN #Pattern#19b8cf65::Pattern::getImmediateEnclosingPattern#0#dispredPlus#fb#flipped OUTPUT In.1, In.0
66417 ~1% {3} r3 = JOIN r2 WITH NamedPattern#c3d26570::Generated::NamedPattern::getName#0#dispred#ff ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.0
158465 ~0% {3} r4 = r1 UNION r3
94246 ~3% {3} r5 = JOIN r4 WITH VarDecl#914e0d1e::Generated::VarDecl::getImmediateParentPattern#0#dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2
91309 ~2% {2} r6 = JOIN r5 WITH VarDecl#914e0d1e::Generated::VarDecl::getName#0#dispred#ff ON FIRST 2 OUTPUT Lhs.2, Lhs.0
return r6
```
2023-06-08 12:03:58 +02:00
Nora Dimitrijević
cad6582701
Merge branch 'main' into swift/brace-stmt-variables
2023-06-07 10:51:58 +02:00
Paolo Tranquilli
0b09fdae43
Merge branch 'main' into alexdenisov+redsun82/tuple-mangling
2023-06-07 10:40:38 +02:00
Geoffrey White
aa8878ba86
Merge pull request #13356 from geoffw0/qualname
...
Swift: Add FieldDecl.getQualifiedName
2023-06-07 09:08:16 +01:00
Nora Dimitrijević
03e94c7137
Swift: add library pack change note
2023-06-06 17:37:02 +02:00
Nora Dimitrijević
a831456e94
Swift: make BraceStmt's variable a synth property
2023-06-06 16:54:47 +02:00
Nora Dimitrijević
4a29087ce7
Swift: update Cfg test: VarDecls no longer in BraceStmt basic blocks
...
This is a consequence of VarDecls not being Elements of BraceStmts. =
2023-06-06 16:54:47 +02:00
Nora Dimitrijević
8ccbad601b
Swift: PrintAst test changes
2023-06-06 16:54:47 +02:00
Nora Dimitrijević
026492836c
Swift: codegen
2023-06-06 16:54:46 +02:00
Nora Dimitrijević
387cde5972
Swift: add BraceStmt.getVariable(_) child with logic in QL.
2023-06-06 16:54:46 +02:00
Geoffrey White
e04f6bff27
Swift: Add a simple Regex library.
2023-06-05 23:55:01 +01:00
Geoffrey White
c994b4b9dd
Swift: Create test cases for a regular expression library.
2023-06-05 23:55:01 +01:00