File tree 15 files changed +127
-0
lines changed
regression/cbmc-java/overlay-class
15 files changed +127
-0
lines changed Original file line number Diff line number Diff line change
1
+ public class Test
2
+ {
3
+ public int x ;
4
+
5
+ public static void main (String [] args )
6
+ {
7
+ assert (false );
8
+ }
9
+
10
+ public static void notOverlain ()
11
+ {
12
+ assert (true );
13
+ }
14
+ }
Original file line number Diff line number Diff line change
1
+ package com .diffblue ;
2
+
3
+ public @interface OverlayClassImplementation {
4
+ }
Original file line number Diff line number Diff line change
1
+ package com .diffblue ;
2
+
3
+ public @interface OverlayMethodImplementation {
4
+ }
Original file line number Diff line number Diff line change
1
+ import com .diffblue .OverlayClassImplementation ;
2
+ import com .diffblue .OverlayMethodImplementation ;
3
+
4
+ @ OverlayClassImplementation
5
+ public class Test
6
+ {
7
+ public int x ;
8
+
9
+ @ OverlayMethodImplementation
10
+ public static void main (String [] args )
11
+ {
12
+ assert (true );
13
+ }
14
+ }
Original file line number Diff line number Diff line change
1
+ CORE
2
+ Test.class
3
+ `./format_classpath.sh . annotations correct-overlay` --verbosity 10
4
+ ^Getting class `Test' from file \.[\\/]Test\.class$
5
+ ^Getting class `Test' from file correct-overlay[\\/]Test\.class$
6
+ ^Adding symbol from overlay class: field 'x'$
7
+ ^Adding symbol from overlay class: method 'java::Test\.<init>:\(\)V'$
8
+ ^Field definition for java::Test\.x already loaded from overlay class$
9
+ ^Adding symbol from overlay class: method 'java::Test\.main:\(\[Ljava/lang/String;\)V'$
10
+ ^Method java::Test\.<init>:\(\)V exists in an overlay class without being marked as an overlay and also exists in the underlying class
11
+ ^Adding symbol: method 'java::Test\.notOverlain:\(\)V'$
12
+ ^VERIFICATION SUCCESSFUL$
13
+ ^EXIT=0$
14
+ ^SIGNAL=0$
15
+ --
16
+ ^Skipping class Test marked with OverlayClassImplementation but found before original definition$
17
+ ^Skipping duplicate definition of class Test not marked with OverlayClassImplementation$
Original file line number Diff line number Diff line change
1
+ CORE
2
+ Test.class
3
+ `./format_classpath.sh . annotations . correct-overlay` --verbosity 10
4
+ ^Getting class `Test' from file \.[\\/]Test\.class$
5
+ ^Getting class `Test' from file correct-overlay[\\/]Test\.class$
6
+ ^Skipping duplicate definition of class Test not marked with OverlayClassImplementation$
7
+ ^Adding symbol from overlay class: field 'x'$
8
+ ^Adding symbol from overlay class: method 'java::Test\.<init>:\(\)V'$
9
+ ^Field definition for java::Test\.x already loaded from overlay class$
10
+ ^Adding symbol from overlay class: method 'java::Test\.main:\(\[Ljava/lang/String;\)V'$
11
+ ^Method java::Test\.<init>:\(\)V exists in an overlay class without being marked as an overlay and also exists in the underlying class
12
+ ^Adding symbol: method 'java::Test\.notOverlain:\(\)V'$
13
+ ^VERIFICATION SUCCESSFUL$
14
+ ^EXIT=0$
15
+ ^SIGNAL=0$
16
+ --
17
+ ^Skipping class Test marked with OverlayClassImplementation but found before original definition$
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ unameOut=" $( uname -s) "
4
+ case " ${unameOut} " in
5
+ CYGWIN* ) separator=" ;" ;;
6
+ MINGW* ) separator=" ;" ;;
7
+ MSYS* ) separator=" ;" ;;
8
+ Windows* ) separator=" ;" ;;
9
+ * ) separator=" :"
10
+ esac
11
+
12
+ echo -n " --classpath \" "
13
+ echo -n ` IFS=$separator ; echo " $* " `
14
+ echo -n " \" "
Original file line number Diff line number Diff line change
1
+ CORE
2
+ Test.class
3
+ `./format_classpath.sh annotations correct-overlay .` --verbosity 10
4
+ ^Getting class `Test' from file correct-overlay[\\/]Test\.class$
5
+ ^Getting class `Test' from file \.[\\/]Test\.class$
6
+ ^Skipping class Test marked with OverlayClassImplementation but found before original definition$
7
+ ^Adding symbol: field 'x'$
8
+ ^Adding symbol: method 'java::Test\.main:\(\[Ljava/lang/String;\)V'$
9
+ ^Adding symbol: method 'java::Test\.notOverlain:\(\)V'$
10
+ ^VERIFICATION FAILED$
11
+ ^EXIT=10$
12
+ ^SIGNAL=0$
13
+ --
14
+ ^Skipping duplicate definition of class Test not marked with OverlayClassImplementation$
15
+ ^Adding symbol from overlay class
16
+ exists in an overlay class without being marked as an overlay and also exists in the underlying class
Original file line number Diff line number Diff line change
1
+ import com .diffblue .OverlayClassImplementation ;
2
+ import com .diffblue .OverlayMethodImplementation ;
3
+
4
+ public class Test
5
+ {
6
+ @ OverlayMethodImplementation
7
+ public static void main (String [] args )
8
+ {
9
+ assert (false );
10
+ }
11
+ }
Original file line number Diff line number Diff line change
1
+ CORE
2
+ Test.class
3
+ `./format_classpath.sh . annotations unmarked-overlay` --verbosity 10
4
+ ^Getting class `Test' from file \.[\\/]Test\.class$
5
+ ^Getting class `Test' from file unmarked-overlay[\\/]Test\.class$
6
+ ^Skipping duplicate definition of class Test not marked with OverlayClassImplementation$
7
+ ^Adding symbol: field 'x'$
8
+ ^Adding symbol: method 'java::Test\.main:\(\[Ljava/lang/String;\)V'$
9
+ ^Adding symbol: method 'java::Test\.notOverlain:\(\)V'$
10
+ ^VERIFICATION FAILED$
11
+ ^EXIT=10$
12
+ ^SIGNAL=0$
13
+ --
14
+ ^Skipping class Test marked with OverlayClassImplementation but found before original definition$
15
+ ^Adding symbol from overlay class
16
+ exists in an overlay class without being marked as an overlay and also exists in the underlying class
You can’t perform that action at this time.
0 commit comments