Files
codeql/cpp/ql/test/library-tests/blocks/c/code_blocks.ql
Jonas Jensen 4ef5c9af62 C++: Autoformat everything
Some files that will change in #1736 have been spared.

    ./build -j4 target/jars/qlformat
    find ql/cpp/ql -name "*.ql"  -print0 | xargs -0 target/jars/qlformat --input
    find ql/cpp/ql -name "*.qll" -print0 | xargs -0 target/jars/qlformat --input
    (cd ql && git checkout 'cpp/ql/src/semmle/code/cpp/ir/implementation/**/*SSA*.qll')
    buildutils-internal/scripts/pr-checks/sync-identical-files.py --latest
2019-09-09 11:25:53 +02:00

21 lines
598 B
Plaintext

import cpp
predicate paramsString(Function f, int n, string res) {
if n = -1
then res = ""
else
exists(string sep |
(if n = 0 then sep = "" else sep = ", ") and
exists(string prefixRes |
paramsString(f, n - 1, prefixRes) and
res = prefixRes + sep + f.getParameter(n) + "(" + f.getParameter(n).getType() + ")"
)
)
}
from BlockExpr e, Function f, string params
where
f = e.getFunction() and
paramsString(f, f.getNumberOfParameters() - 1, params)
select e, e.getType() as te, te.explain(), e.getFunction(), f.getType() as tf, tf.explain(), params