Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
2d7109b
C++: initial implementation of a HashCons library.
kevinbackhouse Aug 23, 2018
3c6a9c0
C++: first tests for HashCons
rdmarsh2 Aug 23, 2018
8b8ec7c
C++: add literal tests
rdmarsh2 Aug 23, 2018
d8dc75a
C++: rename HashCons test
rdmarsh2 Aug 23, 2018
cf222c5
C++: treat constant-valued exprs structurally
rdmarsh2 Aug 23, 2018
a8895f4
C++: Support crement ops in HashCons
rdmarsh2 Aug 24, 2018
b8bd285
C++: support functions in HashCons
rdmarsh2 Aug 24, 2018
77c5a8e
C++: support impure binary operations in HashCons
rdmarsh2 Aug 25, 2018
e0af30a
C++: clean up commented-out code
rdmarsh2 Aug 25, 2018
3a5eb03
C++: change floating point value in test
rdmarsh2 Aug 27, 2018
91da02b
C++: uniqueness fixes for HashCons
rdmarsh2 Aug 27, 2018
e6314c5
C++: add support for enums in HashCons
rdmarsh2 Aug 27, 2018
fede8d6
C++: respond to PR comments
rdmarsh2 Aug 27, 2018
5549b6f
C++: HashCons for new, new[], sizeof, alignof
rdmarsh2 Aug 28, 2018
8f446aa
C++: fix handling of aligned allocators
rdmarsh2 Aug 28, 2018
752f39b
C++: initial support for aggregate initializers
rdmarsh2 Aug 29, 2018
85cfb02
C++: add HashCons for delete expressions
rdmarsh2 Aug 29, 2018
8189798
C++: HashCons for throw
rdmarsh2 Aug 29, 2018
cfeed30
C++: Hashcons tests for ArrayExpr
rdmarsh2 Aug 29, 2018
06a3e8f
C++: Hashcons for ?:, ExprCall, and weird stuff
rdmarsh2 Aug 29, 2018
246ae2d
C++: fix performance of argument hash-consing
rdmarsh2 Aug 30, 2018
fa9eeea
C++: remove implicit this handling in HashCons
rdmarsh2 Aug 29, 2018
9f476e5
C++: Simplify some code
rdmarsh2 Aug 30, 2018
c42ecfe
C++: Simplify HashCons for new and handle extents
rdmarsh2 Aug 30, 2018
2d098fe
fix HashCons for typeid of type
rdmarsh2 Aug 30, 2018
bbafcd9
C++: typeid and noexcept fixes in HashCons
rdmarsh2 Aug 31, 2018
166dba2
C++: accept test output
rdmarsh2 Sep 4, 2018
990bfb4
C++: change note for HashCons library
rdmarsh2 Sep 4, 2018
fb8ad93
C++: Uniqueness fixes for HashCons
rdmarsh2 Sep 6, 2018
cb9f126
C++: select example exprs for HashCons portably
rdmarsh2 Sep 6, 2018
0e44bf3
C++: Add import for LGTM
rdmarsh2 Sep 10, 2018
1a14b13
C++: migrate change note
rdmarsh2 Sep 13, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions change-notes/1.19/analysis-cpp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Improvements to C/C++ analysis

## General improvements

## New queries

| **Query** | **Tags** | **Purpose** |
|-----------------------------|-----------|--------------------------------------------------------------------|
| *@name of query (Query ID)* | *Tags* |*Aim of the new query and whether it is enabled by default or not* |

## Changes to existing queries

| **Query** | **Expected impact** | **Change** |
|----------------------------|------------------------|------------------------------------------------------------------|
| *@name of query (Query ID)*| *Impact on results* | *How/why the query has changed* |


## Changes to QL libraries

* Added a hash consing library for structural comparison of expressions.
1 change: 1 addition & 0 deletions cpp/ql/src/filters/ImportAdditionalLibraries.ql
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import semmle.code.cpp.dataflow.DataFlow2
import semmle.code.cpp.dataflow.DataFlow3
import semmle.code.cpp.dataflow.DataFlow4
import semmle.code.cpp.dataflow.TaintTracking
import semmle.code.cpp.valuenumbering.HashCons

from File f, string tag
where none()
Expand Down
Loading