mirror of
https://github.com/github/codeql.git
synced 2026-04-28 18:25:24 +02:00
C++: Add PreprocBlock tests.
This commit is contained in:
8
cpp/ql/test/library-tests/headers/preprocBlock/header.h
Normal file
8
cpp/ql/test/library-tests/headers/preprocBlock/header.h
Normal file
@@ -0,0 +1,8 @@
|
||||
// header.h
|
||||
|
||||
#ifndef HEADER_H
|
||||
#define HEADER_H
|
||||
|
||||
// ...
|
||||
|
||||
#endif // HEADER_H
|
||||
@@ -0,0 +1,25 @@
|
||||
// preprocblock.cpp
|
||||
|
||||
#include "header.h"
|
||||
#define GREEN
|
||||
|
||||
#ifdef RED
|
||||
#elif defined GREEN
|
||||
#include "header.h"
|
||||
|
||||
#ifndef BLUE
|
||||
#include "header.h"
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#include "header.h" // not reached
|
||||
#else
|
||||
#include "header.h"
|
||||
#endif
|
||||
|
||||
#include "header.h"
|
||||
#else
|
||||
|
||||
// ...
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,10 @@
|
||||
| #elif defined GREEN | preprocblock.cpp:10:0:11:0 | #ifndef BLUE |
|
||||
| #elif defined GREEN | preprocblock.cpp:14:0:15:0 | #if 0 |
|
||||
| #elif defined GREEN | preprocblock.cpp:16:0:17:0 | #else |
|
||||
| (no parent) | file://:0:0:0:0 | |
|
||||
| (no parent) | header.h:0:0:8:0 | header.h |
|
||||
| (no parent) | preprocblock.cpp:0:0:25:0 | preprocblock.cpp |
|
||||
| header.h | header.h:3:0:7:0 | #ifndef HEADER_H |
|
||||
| preprocblock.cpp | preprocblock.cpp:6:0:6:0 | #ifdef RED |
|
||||
| preprocblock.cpp | preprocblock.cpp:7:0:20:0 | #elif defined GREEN |
|
||||
| preprocblock.cpp | preprocblock.cpp:21:0:24:0 | #else |
|
||||
@@ -0,0 +1,6 @@
|
||||
import cpp
|
||||
import semmle.code.cpp.headers.PreprocBlock
|
||||
|
||||
from PreprocessorBlock b, string parent
|
||||
where if exists(b.getParent()) then parent = b.getParent().toString() else parent = "(no parent)"
|
||||
select parent, b
|
||||
@@ -0,0 +1,5 @@
|
||||
| preprocblock.cpp:3:1:3:19 | #include "header.h" | preprocblock.cpp:0:0:25:0 | preprocblock.cpp |
|
||||
| preprocblock.cpp:8:2:8:20 | #include "header.h" | preprocblock.cpp:7:0:20:0 | #elif defined GREEN |
|
||||
| preprocblock.cpp:11:3:11:21 | #include "header.h" | preprocblock.cpp:10:0:11:0 | #ifndef BLUE |
|
||||
| preprocblock.cpp:17:3:17:21 | #include "header.h" | preprocblock.cpp:16:0:17:0 | #else |
|
||||
| preprocblock.cpp:20:2:20:20 | #include "header.h" | preprocblock.cpp:7:0:20:0 | #elif defined GREEN |
|
||||
@@ -0,0 +1,6 @@
|
||||
import cpp
|
||||
import semmle.code.cpp.headers.PreprocBlock
|
||||
|
||||
from PreprocessorBlock b, Include i
|
||||
where b.getAnInclude() = i
|
||||
select i, b
|
||||
Reference in New Issue
Block a user