mirror of
https://github.com/github/codeql.git
synced 2026-05-20 22:27:18 +02:00
These use the annotated, self-verifying test files to check various consistency requirements. Some of these may be expressing the same thing in different ways, but it's fairly cheap to keep them around, so I have not attempted to produce a minimal set of queries for this.
17 lines
462 B
Plaintext
17 lines
462 B
Plaintext
/**
|
|
* Checks that two annotations sharing a timestamp value are on
|
|
* mutually exclusive CFG paths (neither can reach the other).
|
|
*/
|
|
|
|
import OldCfgImpl
|
|
|
|
private module Utils = EvalOrderCfgUtils<OldCfg>;
|
|
|
|
private import Utils
|
|
private import Utils::CfgTests
|
|
|
|
from TimerCfgNode a, TimerCfgNode b, int ts
|
|
where noSharedReachable(a, b, ts)
|
|
select a, "Shared timestamp $@ but this node reaches $@", a.getTimestampExpr(ts), ts.toString(), b,
|
|
b.getNode().toString()
|