blob: a40753d87ae00d2fe88f3ae931e921868177b6df (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# flake8: noqa: F821
test.compile("source.cpp", "-fno-exceptions")
test.run_analysis_script("gcTypes")
hazards = test.load_hazards()
assert len(hazards) == 0
# If we compile with exceptions, then there *should* be a hazard because
# AutoSomething::AutoSomething might throw an exception, which would cause the
# partially-constructed value to be torn down, which will call ~RAII_GC.
test.compile("source.cpp", "-fexceptions")
test.run_analysis_script("gcTypes")
hazards = test.load_hazards()
assert len(hazards) == 1
hazard = hazards[0]
assert hazard.function == "void f()"
assert hazard.variable == "thing"
assert "AutoSomething::AutoSomething" in hazard.GCFunction
|