brintos

brintos / llvm-project-archived public Read only

0
0
Text · 612 B · c2ad7cd Raw
22 lines · cpp
1// RUN: %clang_analyze_cc1 -std=c++11 -analyzer-checker=core,debug.ExprInspection -analyzer-config inline-lambdas=true -verify %s2 3void clang_analyzer_eval(bool);4 5void basic() {6  int (*ret_zero)() = []() { return 0; };7  clang_analyzer_eval(ret_zero() == 0); // expected-warning{{TRUE}}8}9 10void withParam() {11  int (*add_ten)(int) = [](int b) { return b + 10; };12  clang_analyzer_eval(add_ten(1) == 11); // expected-warning{{TRUE}}13}14 15int callBack(int (*fp)(int), int x) {16  return fp(x);17}18 19void passWithFunc() {20  clang_analyzer_eval(callBack([](int x) { return x; }, 5) == 5); // expected-warning{{TRUE}}21}22