MCPcopy Create free account
hub / github.com/cppcheck-opensource/cppcheck / test_slow_exprid

Function test_slow_exprid

test/cli/performance_test.py:122–147  ·  view source on GitHub ↗
(tmpdir)

Source from the content-addressed store, hash-verified

120
121@pytest.mark.timeout(10)
122def test_slow_exprid(tmpdir):
123 # 11885
124 filename = os.path.join(tmpdir, 'hang.c')
125 with open(filename, 'wt') as f:
126 f.write("""
127int foo(int a, int b)
128{
129#define A0(a, b) ((a) + (b))
130#define A1(a, b) ((a) > (b)) ? A0((a) - (b), (b)) : A0((b) - (a), (a))
131#define A2(a, b) ((a) > (b)) ? A1((a) - (b), (b)) : A1((b) - (a), (a))
132#define A3(a, b) ((a) > (b)) ? A2((a) - (b), (b)) : A2((b) - (a), (a))
133#define A4(a, b) ((a) > (b)) ? A3((a) - (b), (b)) : A3((b) - (a), (a))
134#define A5(a, b) ((a) > (b)) ? A4((a) - (b), (b)) : A4((b) - (a), (a))
135#define A6(a, b) ((a) > (b)) ? A5((a) - (b), (b)) : A5((b) - (a), (a))
136#define A7(a, b) ((a) > (b)) ? A6((a) - (b), (b)) : A6((b) - (a), (a))
137#define A8(a, b) ((a) > (b)) ? A7((a) - (b), (b)) : A7((b) - (a), (a))
138#define A9(a, b) ((a) > (b)) ? A8((a) - (b), (b)) : A8((b) - (a), (a))
139#define A10(a, b) ((a) > (b)) ? A9((a) - (b), (b)) : A9((b) - (a), (a))
140#define A11(a, b) ((a) > (b)) ? A10((a) - (b), (b)) : A10((b) - (a), (a))
141 return A8(a, b);
142}
143 """)
144
145 my_env = os.environ.copy()
146 my_env["DISABLE_VALUEFLOW"] = "1"
147 cppcheck([filename], env=my_env)
148
149@pytest.mark.timeout(35)
150def test_stack_overflow_AST(tmpdir):

Callers

nothing calls this directly

Calls 4

cppcheckFunction · 0.90
joinMethod · 0.45
writeMethod · 0.45
copyMethod · 0.45

Tested by

no test coverage detected