mirror of
https://github.com/github/codeql.git
synced 2025-12-24 04:36:35 +01:00
This implements calculation of the control-flow graph in QL. The new code is not enabled yet as we'll need more extractor changes first. The `SyntheticDestructorCalls.qll` file is a temporary solution that can be removed when the extractor produces this information directly.
22 lines
445 B
C++
22 lines
445 B
C++
// semmle-extractor-options: --c++17
|
|
|
|
namespace std { typedef unsigned long size_t; }
|
|
|
|
void* operator new ( std::size_t count, void* ptr );
|
|
|
|
namespace placement_new {
|
|
struct HasTwoArgCtor {
|
|
int x;
|
|
HasTwoArgCtor(int a, int b);
|
|
};
|
|
|
|
template<typename T, typename... Args>
|
|
void make(T *ptr, Args&&... args) {
|
|
::new((void *)ptr) HasTwoArgCtor(args...);
|
|
}
|
|
|
|
void make_HasTwoArgCtor(HasTwoArgCtor *p) {
|
|
make(p, 1, 2);
|
|
}
|
|
}
|