Dave Bartolomeo
87f0b0ef97
C++: QLDoc for EdgeKind.qll
2020-06-29 12:43:50 -04:00
Dave Bartolomeo
440ea6a069
C++: QLDoc for PrintIR.qll
2020-06-29 12:43:50 -04:00
Dave Bartolomeo
2043d9c7c4
C++: QLDoc for Operand.qll
2020-06-29 12:43:50 -04:00
Dave Bartolomeo
ead2a143e0
C++: QLDoc for IRVariable
...
Moved a couple of predicates that were only needed by IR construction into `TranslatedElement.qll`
2020-06-29 12:43:50 -04:00
Dave Bartolomeo
1423ea0591
C++: More IR.qll QLDoc
2020-06-29 12:43:50 -04:00
Dave Bartolomeo
98348a9353
C++: QLDoc for IR.qll
2020-06-29 12:43:50 -04:00
Dave Bartolomeo
88f89b3334
C++: QLDoc for IRFunction.qll
2020-06-29 12:43:49 -04:00
Dave Bartolomeo
d0af9f5808
C++: QLDoc all of IRBlock.qll
2020-06-29 12:43:49 -04:00
Dave Bartolomeo
77bf564136
C++: Finish Instruction.qll QLDoc
2020-06-29 12:43:49 -04:00
Dave Bartolomeo
6de3d5bc3d
C++: Change opcode QLDocs to refer to instruction QLDocs
...
As discussed in today's C++ analysis team meeting. `Opcode` is rarely used directly, so we'll just refer to the documentation for the corresponding `Instruction` class.
I've preserved the script in case we want to do a bulk change of all of the `Opcode` comments, but I don't expect it will be needed if we just add a new `Opcode` or two.
2020-06-29 12:41:36 -04:00
Geoffrey White
a8a7df4e5c
C++: QLDoc SensitiveExprs.qll.
2020-06-29 17:08:44 +01:00
Geoffrey White
e2e5e9b2a9
C++: QLDoc Synchronization.qll and improve existing QLDoc.
2020-06-29 16:56:01 +01:00
Anders Schack-Mulligen
0bd81eb4b8
Dataflow: Fix reference to viableCallable.
2020-06-29 16:22:58 +02:00
Geoffrey White
55883f60f7
C++: Autoformat.
2020-06-29 14:48:15 +01:00
Geoffrey White
441d4c077a
Update cpp/ql/src/semmle/code/cpp/exprs/Cast.qll
...
Co-authored-by: Jonas Jensen <jbj@github.com >
2020-06-29 13:13:00 +01:00
Nick Rolfe
ab1dc64eea
C++: expand qldoc on MemberFunction::getTypeOfThis()
2020-06-29 11:54:28 +01:00
Mathias Vorreiter Pedersen
6b27652b99
C++: Remove abstractness from a couple of AST classes
2020-06-29 10:27:16 +02:00
Mathias Vorreiter Pedersen
5fbf30590e
C++: Accept test changes.
2020-06-28 20:21:51 +02:00
Mathias Vorreiter Pedersen
9c0f877172
C++: Keep old instruction -> instruction flow in simpleInstructionLocalFlowStep. This means we don't have to add general operand -> instruction to the simpleLocalFlowStep relation, which seems to add a 10% performance regression.
2020-06-28 11:28:43 +02:00
Dave Bartolomeo
4dcdd8a0ee
C++: Add last remaining QLDoc to Opcode.qll
2020-06-26 17:25:30 -04:00
Dave Bartolomeo
bdf121f3b8
C++: Update opcode QLDoc script to handle abstract base classes
...
This auto-generates even more QLDoc for `Opcode.qll`
2020-06-26 16:04:33 -04:00
Dave Bartolomeo
e00a8f7670
Merge pull request #3815 from jbj/getAPrimaryQlClass
...
C++: getCanonicalQLClass -> getAPrimaryQlClass
2020-06-26 13:52:16 -04:00
Dave Bartolomeo
5f290520ab
C++: Accept test diffs due to opcode rename
2020-06-26 13:45:41 -04:00
Dave Bartolomeo
281985b845
C++: Sync Opcode.qll QLDoc with Instruction.qll QLDoc
...
For every concrete `Opcode`, there is a corresponding `Instruction` class. Rather than duplicate all of the QLDoc by hand, I wrote a quick Python script to copy the QLDoc from `Instruction.qll` to `Opcode.qll`. I don't expect that we will need to do this often, so I'm not hooking it up to a PR check or anything like that, but I did commit the script itself in case we need it again.
2020-06-26 11:42:32 -04:00
Dave Bartolomeo
023e1dc0a2
Instruction and opcode cleanup
...
- Renamed `DynamicCastToVoid` to the more descriptive `CompleteObjectAddress`
- Split verbose description from summary in a few Instruction QLDoc comments.
- Added `Instruction` classes for the few remaining `Opcode`s that didn't have one.
- Removed a use of "e.g."
2020-06-26 11:39:10 -04:00
Jonas Jensen
a22fb7662e
C++: Autoformat fixup
2020-06-26 16:57:06 +02:00
Nick Rolfe
0ae5fb0357
C++: auto-format test query
2020-06-26 15:35:55 +01:00
Nick Rolfe
309a8e60c8
C++: add more test cases for the type of this
2020-06-26 14:20:46 +01:00
Nick Rolfe
e79625ed14
Accept suggested qldoc change
...
Co-authored-by: Dave Bartolomeo <dbartol@github.com >
2020-06-26 14:20:46 +01:00
Nick Rolfe
9e9d69238a
C++: add test for MemberFunction::getTypeOfThis()
2020-06-26 14:20:46 +01:00
Nick Rolfe
8bd3be6e7b
C++: add MemberFunction::getTypeOfThis()
2020-06-26 14:20:46 +01:00
Nick Rolfe
ca25971955
C++: upgrade script for member_function_this_type
2020-06-26 14:20:45 +01:00
Nick Rolfe
3b15d39ec6
C++: update stats for new member_function_this_type table
2020-06-26 14:20:45 +01:00
Nick Rolfe
133838dbf3
C++: update tests to expect type of this
2020-06-26 14:20:45 +01:00
Nick Rolfe
d1d7fac4ca
C++: add member_function_this_type to dbscheme
2020-06-26 14:20:45 +01:00
Dave Bartolomeo
f48948c604
C++: Opcode cleanup
...
- Remove unused `MemoryAccessOpcode`
- Make `OpcodeWithCondition` private
- Add QLDoc for `Opcode` module
2020-06-26 09:04:37 -04:00
Mathias Vorreiter Pedersen
beb66299e9
Merge pull request #3796 from dbartol/codeql-c-analysis-team/40/2
...
C++: QLDoc for all of `Instruction.qll`
2020-06-26 14:04:48 +02:00
Dave Bartolomeo
11c702331a
Merge pull request #3795 from rdmarsh2/rdmarsh/cpp/add-qldoc-3
...
C++: QLDoc for PrintAST and AST-based range analysis
2020-06-26 07:38:10 -04:00
Jonas Jensen
c1b26d71c3
C++: getCanonicalQLClass -> getAPrimaryQlClass
...
Also updated the QLDoc for `getAPrimaryQlClass` to match the Go version.
2020-06-26 13:20:36 +02:00
Jonas Jensen
9d8052a434
Merge pull request #3813 from MathiasVP/is-argument-for-parameter-join-order
...
C++: Improve join order for AliasAnalysis::isArgumentForParameter
2020-06-26 11:34:33 +02:00
Mathias Vorreiter Pedersen
63752dddef
C++/C#: Sync identical files
2020-06-26 09:08:44 +02:00
Mathias Vorreiter Pedersen
3af679e83d
C++: Put unique around getEnclosingFunction, and specialize function argument, to improve join order.
2020-06-26 09:08:35 +02:00
Dave Bartolomeo
7e3f2dbe4c
C++: Improve QLDoc for getElementSize()
2020-06-25 17:04:32 -04:00
Jonas Jensen
d4c5887122
Merge pull request #3807 from geoffw0/qldoc3
...
C++: Even more QLDoc
2020-06-25 19:29:35 +02:00
Geoffrey White
168f9404f0
Merge branch 'master' into models5
2020-06-25 17:42:08 +01:00
Geoffrey White
488d41f797
C++: QLDoc Cast.qll.
2020-06-25 17:30:45 +01:00
Geoffrey White
6639d6de83
C++: QLDoc exprs\ObjectiveC.qll (deprecated).
2020-06-25 17:30:45 +01:00
Geoffrey White
1df843c8f6
C++: QLDoc multiple files in the exprs directory.
2020-06-25 17:30:44 +01:00
Geoffrey White
b7730fb1ad
C++: QLDoc PrintfLike.qll.
2020-06-25 17:30:44 +01:00
Robert Marsh
9a1f909129
C++: Fix QLDoc for PrintAST.qll nodes/edges
2020-06-25 09:07:20 -07:00