Asger F
1516029cf5
JS: Avoid generating ArrayElement edges for extend-like patterns
2025-03-17 13:48:27 +01:00
Asger F
125e732c4c
JS: Fix bad join order
2025-03-17 13:44:33 +01:00
Asger F
cd3909245d
JS: Bugfix in Array constructor summary
2025-03-14 23:08:22 +01:00
Asger F
fe1bdf2468
JS: Update a test
2025-03-14 23:08:20 +01:00
Asger F
ab74898bbb
JS: Deprecate getUnknownMember() and replace its uses with getArrayElement()
...
Although they mean slightly different things, every single call site
of getUnknownMember() just used it as a way to get array elements.
Since there is no known use-case for the original meaning of
getUnknownMember() I am deprecating it for now.
2025-03-14 23:08:19 +01:00
Asger F
4c1c0b79a6
JS: Make API-graphs use Content internally, and use steps from flow summaries
2025-03-14 23:08:16 +01:00
Asger F
cc95c77cbc
JS: Add failing test
2025-03-14 23:04:10 +01:00
Owen Mansel-Chan
f0af5af015
Merge pull request #19015 from owen-mc/java/toctou-sync-methods
...
Java: Fix FP in "Time-of-check time-of-use race condition" (`java/toctou-race-condition`)
2025-03-14 21:35:51 +00:00
Tom Hvitved
a56493cbbc
Merge pull request #19028 from hvitved/rust/crate-locatable
2025-03-14 20:27:33 +01:00
Aditya Sharad
c5b35b0976
Merge pull request #19022 from adityasharad/actions/paths-ignore-test-dir
...
Code scanning config: Exclude actions test directory
2025-03-14 23:44:16 +05:30
Aditya Sharad
28f40f1d45
Merge pull request #19023 from adityasharad/actions/env-var-query-names
...
Actions: Fix typos in query names for env var injection
2025-03-14 19:11:11 +05:30
Napalys Klicius
70232a34f3
Merge pull request #19006 from Napalys/js/vue_tanstack_model
...
Js: Added support for `@tanstack/vue-query`
2025-03-14 14:36:35 +01:00
Napalys
933f3c6f77
Refactor Tanstack integration: remove Tanstack framework and added model as data for it instead.
2025-03-14 13:52:05 +01:00
Napalys
d40ef0ddae
Changed from taint to value steps.
...
Co-authored-by: Asgerf <asgerf@github.com >
2025-03-14 13:48:15 +01:00
Anders Schack-Mulligen
474b8a5a31
Merge pull request #18942 from aschackmull/cpp/refactor-ssa
...
C++: Refactor SSA usage in data flow.
2025-03-14 13:31:32 +01:00
Tom Hvitved
0dd59cbb25
Rust: Make Crate a sub class of Locatable
2025-03-14 13:18:02 +01:00
Simon Friis Vindum
60f96eee7e
Merge pull request #19026 from paldepind/rust-expr-type-eq
...
Rust: Handle type equality for a few more expression types
2025-03-14 13:14:52 +01:00
Owen Mansel-Chan
7702e9da7d
Address review comments
2025-03-14 11:44:01 +00:00
Owen Mansel-Chan
5c7588822d
Fix test output
2025-03-14 11:44:00 +00:00
Simon Friis Vindum
c17c0458dd
Rust: Handle type equality for a few more expression types
2025-03-14 11:59:34 +01:00
Simon Friis Vindum
82304832e8
Rust: Add type inference examples
2025-03-14 11:13:16 +01:00
Anders Schack-Mulligen
c2309442d5
C++: Accept qltest changes.
2025-03-14 10:51:28 +01:00
Mathias Vorreiter Pedersen
90774c03be
C++: Remove yet another DefinitionExt reference.
2025-03-14 10:51:27 +01:00
Anders Schack-Mulligen
35687ea698
C++: Merge two cached stages.
2025-03-14 10:51:27 +01:00
Anders Schack-Mulligen
7bfd47a924
C++: Fix bad join order.
...
Before:
[2025-03-12 10:27:53] Evaluated non-recursive predicate SsaInternals::UseImpl.hasIndexInBlock/2#dispred#1e34a5af@e87543ui in 935ms (size: 8905695).
Evaluated relational algebra for predicate SsaInternals::UseImpl.hasIndexInBlock/2#dispred#1e34a5af@e87543ui with tuple counts:
{3} r1 = SsaInternals::DirectUseImpl#a58aae88 AND NOT `_ArithmeticOperation::PostfixCrementOperation#17623ada_Expr::UnaryOperation.getOperand/0#dispred#990__#antijoin_rhs`(FIRST 3)
8579337 ~4% {2} | SCAN OUTPUT In.1, In.0
8579337 ~0% {2} | JOIN WITH `Operand::Operand.getUse/0#dispred#427b49d0` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
8579337 ~0% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
48215 ~2% {2} r2 = SCAN SsaInternals::GlobalUse#9cd323b4 OUTPUT In.2, In.0
35467318 ~3% {2} | JOIN WITH `SSAConstruction::getInstructionEnclosingIRFunction/1#5443f355_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
48189 ~0% {2} r3 = JOIN r2 WITH Instruction::ReturnInstruction#28bfb7eb ON FIRST 1 OUTPUT Lhs.0, Lhs.1
12332 ~0% {2} r4 = JOIN r2 WITH Instruction::UnreachedInstruction#774c7a34 ON FIRST 1 OUTPUT Lhs.0, Lhs.1
60521 ~0% {2} r5 = r3 UNION r4
60521 ~2% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
39316 ~0% {2} r6 = JOIN SsaInternals::FinalParameterUse#c1f84700_10#join_rhs WITH `Parameter::Parameter.getFunction/0#dispred#803faca2` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
43821265 ~0% {2} | JOIN WITH `Instruction::Instruction.getEnclosingFunction/0#dispred#cb8ccc56_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
39194 ~0% {2} r7 = JOIN r6 WITH Instruction::ReturnInstruction#28bfb7eb ON FIRST 1 OUTPUT Lhs.0, Lhs.1
21255 ~2% {2} r8 = JOIN r6 WITH Instruction::UnreachedInstruction#774c7a34 ON FIRST 1 OUTPUT Lhs.0, Lhs.1
60449 ~0% {2} r9 = r7 UNION r8
60449 ~3% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
8784725 ~1% {5} r10 = JOIN `_SsaInternals::DirectUseImpl#a58aae88_SsaInternals::DirectUseImpl.getBase/0#dispred#4b8c43d0_SsaInte__#shared` WITH `SsaInternals::DirectUseImpl.getBase/0#dispred#4b8c43d0` ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1, Lhs.2, Lhs.3
8784725 ~0% {5} | JOIN WITH `cached_SSAConstruction::getInstructionAst/1#d0d95b50` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4
210435 ~4% {5} | JOIN WITH `Expr::UnaryOperation.getOperand/0#dispred#990de484#bf_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4
205388 ~0% {4} | JOIN WITH ArithmeticOperation::PostfixCrementOperation#17623ada ON FIRST 1 OUTPUT Lhs.4, Lhs.3, Lhs.2, Lhs.1
205388 ~4% {3} | JOIN WITH `__IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs__ArithmeticOperation::PostfixCrementOperat__#join_rhs` ON FIRST 3 OUTPUT Rhs.4, Lhs.3, Rhs.3
205388 ~0% {3} | JOIN WITH `Operand::Operand.getUse/0#dispred#427b49d0` ON FIRST 1 OUTPUT Lhs.2, Rhs.1, Lhs.1
205388 ~1% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_021#join_rhs` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Rhs.2
8905695 ~0% {3} r11 = r1 UNION r5 UNION r9 UNION r10
return r11
After:
[2025-03-12 11:12:48] Evaluated non-recursive predicate SsaInternals::hasReturnPosition/3#02f7eab8@bc405c4l in 3ms (size: 49368).
Evaluated relational algebra for predicate SsaInternals::hasReturnPosition/3#02f7eab8@bc405c4l with tuple counts:
49368 ~3% {1} r1 = Instruction::ReturnInstruction#28bfb7eb UNION Instruction::UnreachedInstruction#774c7a34
49368 ~0% {2} | JOIN WITH `cached_SSAConstruction::getInstructionEnclosingIRFunction/1#5443f355` ON FIRST 1 OUTPUT Lhs.0, Rhs.1
49368 ~2% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
return r1
[2025-03-12 11:12:54] Evaluated non-recursive predicate SsaInternals::UseImpl.hasIndexInBlock/2#dispred#1e34a5af@6e30cduo in 549ms (size: 8905695).
Evaluated relational algebra for predicate SsaInternals::UseImpl.hasIndexInBlock/2#dispred#1e34a5af@6e30cduo with tuple counts:
48215 ~2% {2} r1 = SCAN SsaInternals::GlobalUse#9cd323b4 OUTPUT In.2, In.0
60521 ~2% {3} | JOIN WITH `SsaInternals::hasReturnPosition/3#02f7eab8` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
50725 ~0% {2} r2 = JOIN `IRFunctionBase::IRFunctionBase.getFunction/0#dispred#b024672e_10#join_rhs` WITH `Parameter::Parameter.getFunction/0#dispred#803faca2_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
39231 ~2% {2} | JOIN WITH SsaInternals::FinalParameterUse#c1f84700_10#join_rhs ON FIRST 1 OUTPUT Lhs.1, Rhs.1
60449 ~3% {3} | JOIN WITH `SsaInternals::hasReturnPosition/3#02f7eab8` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
{3} r3 = SsaInternals::DirectUseImpl#a58aae88 AND NOT `_ArithmeticOperation::PostfixCrementOperation#17623ada_Expr::UnaryOperation.getOperand/0#dispred#990__#antijoin_rhs`(FIRST 3)
8579337 ~1% {2} | SCAN OUTPUT In.1, In.0
8579337 ~0% {2} | JOIN WITH `Operand::Operand.getUse/0#dispred#427b49d0` ON FIRST 1 OUTPUT Rhs.1, Lhs.1
8579337 ~1% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Rhs.2
8784725 ~0% {5} r4 = JOIN `_SsaInternals::DirectUseImpl#a58aae88_SsaInternals::DirectUseImpl.getBase/0#dispred#4b8c43d0_SsaInte__#shared` WITH `SsaInternals::DirectUseImpl.getBase/0#dispred#4b8c43d0` ON FIRST 1 OUTPUT Rhs.1, Lhs.0, Lhs.1, Lhs.2, Lhs.3
8784725 ~0% {5} | JOIN WITH `cached_SSAConstruction::getInstructionAst/1#d0d95b50` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4
210435 ~0% {5} | JOIN WITH `Expr::UnaryOperation.getOperand/0#dispred#990de484#bf_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4
205388 ~2% {4} | JOIN WITH ArithmeticOperation::PostfixCrementOperation#17623ada ON FIRST 1 OUTPUT Lhs.4, Lhs.3, Lhs.2, Lhs.1
205388 ~0% {3} | JOIN WITH `__IRBlock::Cached::getInstruction/2#627f9c61_201#join_rhs__ArithmeticOperation::PostfixCrementOperat__#join_rhs` ON FIRST 3 OUTPUT Rhs.4, Lhs.3, Rhs.3
205388 ~0% {3} | JOIN WITH `Operand::Operand.getUse/0#dispred#427b49d0` ON FIRST 1 OUTPUT Lhs.2, Rhs.1, Lhs.1
205388 ~0% {3} | JOIN WITH `IRBlock::Cached::getInstruction/2#627f9c61_021#join_rhs` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Rhs.2
8905695 ~0% {3} r5 = r1 UNION r2 UNION r3 UNION r4
return r5
2025-03-14 10:51:27 +01:00
Anders Schack-Mulligen
ba13d7fffe
C++: Remove superfluous disjunct.
2025-03-14 10:51:26 +01:00
Anders Schack-Mulligen
ecb5e7ad07
C++: Fix spurious ExprNode fanout in DataFlowIntegration.
2025-03-14 10:51:26 +01:00
Anders Schack-Mulligen
b5a2f5d3ff
C++: Remove useless ipa wrapper.
2025-03-14 10:51:25 +01:00
Anders Schack-Mulligen
4bd35b10fc
C++: Delete dead code.
2025-03-14 10:51:25 +01:00
Anders Schack-Mulligen
6ba1d2ef14
C++: Replace DefinitionExt usage with Definition.
2025-03-14 10:51:24 +01:00
Anders Schack-Mulligen
9375e571b1
C++: Use SSA data flow integration module.
2025-03-14 10:51:24 +01:00
Anders Schack-Mulligen
c7ff2f55b5
C++: Remove yet another DefinitionExt reference.
2025-03-14 10:51:23 +01:00
Anders Schack-Mulligen
e01552c3f0
C++: Remove another DefinitionExt reference.
2025-03-14 10:51:23 +01:00
Anders Schack-Mulligen
c5755ba8d4
C++: Remove a DefinitionExt reference.
2025-03-14 10:51:23 +01:00
Anders Schack-Mulligen
0c17786ed0
C++: Delete unused predicate
2025-03-14 10:51:22 +01:00
Napalys
66737402c2
Updated test ouput with fixes from main.
2025-03-14 10:50:10 +01:00
Napalys Klicius
908f48a22f
Merge branch 'main' into js/vue_tanstack_model
2025-03-14 10:45:42 +01:00
Asger F
9a8cb1a55b
Merge pull request #19007 from asgerf/js/api-graph-awaited-return
...
JS: Fix bug in API graphs getPromised() missing async function returns
2025-03-14 10:36:16 +01:00
Tom Hvitved
cf0b3b5727
Merge pull request #18632 from hvitved/rust/type-inference
...
Rust: Implement basic type inference in QL
2025-03-14 09:43:04 +01:00
Michael Nebel
a3ef137a8e
Merge pull request #19014 from michaelnebel/csharp/ccr-useless-gethashcode-all
...
C#: Add `cs/useless-gethashcode-call` to the CCR suite.
2025-03-14 08:45:31 +01:00
Michael Nebel
563ffb8c27
Merge pull request #19010 from michaelnebel/csharp/useless-gethashcode-call
...
C#: Increase precision of `cs/useless-gethashcode-call`.
2025-03-14 08:44:38 +01:00
Jeroen Ketema
de2fb037d0
Merge pull request #18980 from LeStarch/jpl-c-basic-integral-types-fix
...
Fixing BasicIntTypes to allow C Standard Integers and 'bool'
2025-03-14 08:06:55 +01:00
Aditya Sharad
956b5bf6d6
Actions: Fix typos in query names for env var injection
...
This will reflect in the UI titles of existing and new alerts
once shipped but should not churn any existing alerts.
2025-03-13 17:02:04 -07:00
M Starch
7b5d604607
Updating tests to allow new typedefs
2025-03-13 15:04:37 -07:00
Aditya Sharad
c534f89e93
Code scanning config: Exclude actions test directory
...
These are test cases for the GitHub Actions analysis.
Exclude them when running code scanning against this repo,
to avoid noisy alerts.
Test workflow files in this directory are safe from
execution, because Actions only executes workflows
that live directly in the .github/workflows
top-level directory.
`action.yml` files in this directory can in theory
be executed as a step in a workflow; for now exclude them.
2025-03-13 13:30:54 -07:00
Tom Hvitved
c3739d4f23
Address review comments
2025-03-13 21:10:48 +01:00
Óscar San José
fba7bcd127
Merge pull request #19021 from github/oscarsj-patch-2
...
Add paths to codeql-config.yml to avoid codeql analysis errors
2025-03-13 20:26:14 +01:00
M Starch
7f4905987e
Addressing review comments
...
Reduced the category to minorAnalysis. Handled bools via a instanceof with BoolType. Formatted the query correctly.
2025-03-13 11:12:35 -07:00
Óscar San José
66a496fa82
Add paths to codeql-config.yml to avoid codeql analysis errors
2025-03-13 18:27:25 +01:00
Paolo Tranquilli
45db4ae7c6
Merge pull request #19018 from github/redsun82/rust-ql-test-log-fix
...
Rust: fix `qltest.sh` for some versions of macOS
2025-03-13 18:07:50 +01:00