Anders Schack-Mulligen
8f2094f0bf
Autoformat.
2020-11-30 14:42:38 +01:00
Anders Schack-Mulligen
931322e4c5
Merge pull request #4668 from aschackmull/dataflow/refactor-pruning
...
Dataflow: Refactor pruning stages.
2020-11-30 09:37:04 +01:00
Anders Schack-Mulligen
fec9758252
Dataflow: Sync.
2020-11-27 12:16:43 +01:00
Jonas Jensen
8069e7b031
C++: Downgrade two queries to recommendation
...
The `cpp/local-variable-hides-global-variable` doesn't seem right as a
warning without some additional context. For example, is the local
variable and the global variable used in the same function body, and
do they have similar enough types that it would be possible to confuse
them.
The `cpp/missing-header-guard` query enforces good style and helps with
compilation speed, but AFAIK it has never flagged a correctness issue.
Therefore I think it should be a recommendation.
2020-11-27 10:45:03 +01:00
Jonas Jensen
a48235e871
Merge pull request #4730 from MathiasVP/definitionHasPhiNode-join-order-fix
...
C++: Fix join order in definitionHasPhiNode
2020-11-27 09:54:37 +01:00
Jonas Jensen
edb57c2da0
Merge pull request #4731 from criemen/remove-cpp-abstract
...
C++: Remove uses of abstract from the standard library.
2020-11-27 09:53:24 +01:00
Jonas Jensen
ad4b2beafa
Merge pull request #4727 from criemen/remove-abstract-classes
...
C++/C#/JS/Python/Java XML.qll: Remove abstract from class hierarchy.
2020-11-27 08:17:21 +01:00
Mathias Vorreiter Pedersen
a4c060a4c6
Merge pull request #4729 from MathiasVP/safe-external-api-function-use-model-interfaces-only
...
C++: Use model interfaces in DefaultSafeExternalAPIFunction
2020-11-26 16:00:19 +01:00
Cornelius Riemenschneider
f6c3c2bdcc
C++: Auto-format Type.qll.
2020-11-26 11:45:49 +01:00
Mathias Vorreiter Pedersen
b02ac7f523
C++: Use SideEffectFunction (instead of ArrayFunction) to define DefaultSafeExternalAPIFunction.
2020-11-26 11:02:47 +01:00
Cornelius Riemenschneider
5d80417854
Update cpp/ql/src/semmle/code/cpp/Type.qll
...
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2020-11-26 10:39:17 +01:00
Cornelius Riemenschneider
ba32459adf
C++: Remove uses of abstract from the standard library.
2020-11-26 10:17:40 +01:00
Mathias Vorreiter Pedersen
5f4ad3ad7d
C++: Fix join order in definitionHasPhiNode
2020-11-26 10:07:44 +01:00
Jonas Jensen
6fecc38004
Merge pull request #4726 from MathiasVP/revert-4558
...
C++: Revert 4558
2020-11-26 08:44:32 +01:00
Mathias Vorreiter Pedersen
c595baf1e3
C++: Remove INTERNAL from qldoc now that the Pure model implementations are private.
2020-11-25 21:07:47 +01:00
Geoffrey White
bc71c72084
Merge pull request #4728 from criemen/delete-magicdraw
...
C++: Remove MagicDraw.qll
2020-11-25 17:56:37 +00:00
Mathias Vorreiter Pedersen
7730f5dfcf
C++: Use model interfaces in SafeExternalAPIFunction and make the three previosuly-used implementation models private.
2020-11-25 18:20:55 +01:00
Cornelius Riemenschneider
3bfb398516
Autoformat XML.qll.
2020-11-25 18:20:50 +01:00
Cornelius Riemenschneider
acf6c218bc
C++: Remove MagicDraw.qll
2020-11-25 17:36:30 +01:00
Cornelius Riemenschneider
7eec988fb5
XML.qll: Remove abstract from class hierarchy.
2020-11-25 17:22:03 +01:00
Cornelius Riemenschneider
0b8403fc05
C++: Add one more test.
2020-11-25 16:24:55 +01:00
Cornelius Riemenschneider
b4e45ad6cb
C++: Address review.
2020-11-25 16:24:25 +01:00
Mathias Vorreiter Pedersen
4c3a26fea8
Revert "Merge pull request #4558 from rdmarsh2/rdmarsh2/cpp/remove-initialize-nonlocal"
...
This reverts commit 08efd7fbd9 , reversing
changes made to cb8c5e8cca .
2020-11-25 15:51:52 +01:00
Cornelius Riemenschneider
7f13d4c356
C++: Improve EscapesTree analysis in the presence of temporary objects.
2020-11-25 10:41:15 +01:00
Cornelius Riemenschneider
8d024c7ff1
C++: Add tests around references to pointers with temporary objects.
2020-11-25 10:40:33 +01:00
Cornelius Riemenschneider
e68352bcde
C++: Add testcase for false positive.
2020-11-25 10:40:33 +01:00
Jonas Jensen
5f0141953d
Merge pull request #4644 from MathiasVP/unsafe-use-of-this-query
...
C++: Add 'unsafe use of this' query
2020-11-25 08:40:12 +01:00
Jonas Jensen
48460e3e45
Merge pull request #4716 from criemen/escapestree-code-cleanup
...
C++: Simplify and generalize EscapesTree::addressMayEscapeMutablyAt
2020-11-25 08:31:33 +01:00
Robert Marsh
9b07782d19
Merge pull request #4634 from geoffw0/modelchanges2
...
C++: Make classes in models.implementations private
2020-11-24 15:18:10 -05:00
Geoffrey White
71a8ac5183
C++: Autoformat.
2020-11-24 18:42:18 +00:00
Geoffrey White
8184f76d1f
C++: Sync identical files.
2020-11-24 16:29:14 +00:00
Mathias Vorreiter Pedersen
648acc3bfc
C++: Prevent IR re-evaluation by importing GVN.
2020-11-24 17:04:54 +01:00
Cornelius Riemenschneider
026abae323
C++: Simplify some more.
2020-11-24 17:00:47 +01:00
Cornelius Riemenschneider
7983b16e84
C++: Simplify and generalize EscapesTree::addressMayEscapeMutablyAt predicate.
2020-11-24 11:35:18 +01:00
Mathias Vorreiter Pedersen
9d21b226d2
Merge branch 'main' into qualifier-as-parameter-for-callee
2020-11-24 11:13:14 +01:00
Mathias Vorreiter Pedersen
08f8660b17
C++/C#: Add pragma[noinline] to hasIndex predicates.
2020-11-24 10:45:02 +01:00
Mathias Vorreiter Pedersen
8bd14c5af6
C++: Remove duplication-tests directory since we no longer detect duplication.
2020-11-24 10:10:31 +01:00
Geoffrey White
7015a9cf53
C++: Un-private a few classes that are now used by the current DefaultSafeExternalAPIFunction implementation.
2020-11-23 14:47:22 +00:00
Mathias Vorreiter Pedersen
a7644db762
C++: Use the new names in IR dataflow. Turns out DataFlowCall had its own implementation of getArgument already (which didn't handle qualifiers). The predicate wasn't used anywhere, so I simply removed it, as a better predicate is now available on the base class of DataFlowCall.
2020-11-21 01:00:59 +01:00
Mathias Vorreiter Pedersen
61bbceb201
C++/C#: Sync identical files
2020-11-21 00:55:07 +01:00
Mathias Vorreiter Pedersen
f173dc71c0
C++: Use shorter names for new IR predicates. This should hopefully guide users to use these predicates by default.
2020-11-21 00:54:50 +01:00
Geoffrey White
cc8d4b4c75
Merge branch 'main' into modelchanges2
2020-11-20 20:33:52 +00:00
Geoffrey White
fddd353155
C++: Updated autoformat.
2020-11-20 20:15:45 +00:00
Mathias Vorreiter Pedersen
6ead6c6d38
Merge branch 'main' into qualifier-as-parameter-for-callee
2020-11-20 16:17:10 +01:00
Mathias Vorreiter Pedersen
fd4f8c557c
Merge branch 'main' into unsafe-use-of-this-query
2020-11-20 14:54:51 +01:00
Jonas Jensen
14aa6427ca
Merge pull request #4696 from MathiasVP/get-result-memory-location-join-order-fix
...
C++: Fix bad join order in AliasedSSA::getResultMemoryLocation
2020-11-20 14:50:35 +01:00
Mathias Vorreiter Pedersen
c7efc91676
C++: Use the new predicates in IR dataflow.
2020-11-20 12:24:39 +01:00
Mathias Vorreiter Pedersen
f3b5d7b830
C++/C#: Sync identical files
2020-11-20 12:23:34 +01:00
Mathias Vorreiter Pedersen
416431a7c1
C++: Add convenience predicates for working with qualifiers as parameters.
2020-11-20 12:22:37 +01:00
Jonas Jensen
3342fac83e
Merge pull request #4688 from criemen/printast-performance
...
C++: Speed up PrintAST.
2020-11-20 11:45:42 +01:00