mirror of
https://github.com/github/codeql.git
synced 2026-05-03 12:45:27 +02:00
C++: Add more test cases for indirection (4).
This commit is contained in:
@@ -136,6 +136,8 @@ int madArg0FieldToReturn(MyContainer mc); // $ interpretElement
|
||||
int madArg0IndirectFieldToReturn(MyContainer *mc); // $ interpretElement
|
||||
int madArg0FieldIndirectToReturn(MyContainer mc); // $ interpretElement
|
||||
MyContainer madArg0ToReturnField(int x); // $ interpretElement
|
||||
MyContainer *madArg0ToReturnIndirectField(int x); // $ interpretElement
|
||||
MyContainer madArg0ToReturnFieldIndirect(int x); // $ interpretElement
|
||||
|
||||
void test_summaries() {
|
||||
// test summaries
|
||||
@@ -182,6 +184,13 @@ void test_summaries() {
|
||||
sink(madArg0ToReturnField(0).value);
|
||||
sink(madArg0ToReturnField(source()).value); // $ MISSING: ir
|
||||
|
||||
MyContainer *rtn1 = madArg0ToReturnIndirectField(source());
|
||||
sink(rtn1->value); // $ MISSING: ir
|
||||
|
||||
MyContainer rtn2 = madArg0ToReturnFieldIndirect(source());
|
||||
int *rtn2_ptr = rtn2.ptr;
|
||||
sink(*rtn2_ptr); // $ MISSING: ir
|
||||
|
||||
// test source + sinks + summaries together
|
||||
|
||||
madSinkArg0(madArg0ToReturn(remoteMadSource())); // $ ir
|
||||
|
||||
Reference in New Issue
Block a user