Skip to content

Commit d7081fa

Browse files
author
Owen Jones
committed
Test lazy-loading when there are no candidates
It should decide that `intf` is instantiated even though (a) it doesn't see a constructor for it and (b) it is an interface. It isn't ideal instantiating an interface, but it stands in for a class which implements the interface.
1 parent a7eaa8e commit d7081fa

File tree

5 files changed

+22
-0
lines changed

5 files changed

+22
-0
lines changed
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
public class Test {
2+
3+
interface factory_intf {
4+
public intf getintf();
5+
}
6+
7+
interface intf {
8+
public void f();
9+
}
10+
11+
public static void main(factory_intf i) { i.getintf().f(); }
12+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
CORE symex-driven-lazy-loading-expected-failure
2+
Test.class
3+
--lazy-methods --show-goto-functions --verbosity 10 --function Test.main
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
^CI lazy methods: elaborate java::Test\$intf\.f:\(\)V$
7+
Test\$intf\.f:\(\)V\(\);$
8+
--
9+
--
10+
This doesn't work under symex-driven lazy loading because it is incompatible with --lazy-methods

0 commit comments

Comments
 (0)