@@ -45,7 +45,6 @@ Author: Daniel Kroening, kroening@kroening.com
45
45
#include < goto-programs/remove_unused_functions.h>
46
46
#include < goto-programs/remove_skip.h>
47
47
#include < goto-programs/remove_static_init_loops.h>
48
- #include < goto-programs/replace_java_nondet.h>
49
48
#include < goto-programs/set_properties.h>
50
49
#include < goto-programs/show_goto_functions.h>
51
50
#include < goto-programs/show_symbol_table.h>
@@ -64,8 +63,6 @@ Author: Daniel Kroening, kroening@kroening.com
64
63
65
64
#include < langapi/mode.h>
66
65
67
- #include " java_bytecode/java_bytecode_language.h"
68
-
69
66
#include " cbmc_solvers.h"
70
67
#include " bmc.h"
71
68
#include " version.h"
@@ -192,10 +189,6 @@ void cbmc_parse_optionst::get_command_line_options(optionst &options)
192
189
// all checks supported by goto_check
193
190
PARSE_OPTIONS_GOTO_CHECK (cmdline, options);
194
191
195
- // unwind loops in java enum static initialization
196
- if (cmdline.isset (" java-unwind-enum-static" ))
197
- options.set_option (" java-unwind-enum-static" , true );
198
-
199
192
// check assertions
200
193
if (cmdline.isset (" no-assertions" ))
201
194
options.set_option (" assertions" , false );
@@ -545,11 +538,6 @@ int cbmc_parse_optionst::doit()
545
538
if (set_properties ())
546
539
return 7 ; // should contemplate EX_USAGE from sysexits.h
547
540
548
- // unwinds <clinit> loops to number of enum elements
549
- // side effect: add this as explicit unwind to unwind set
550
- if (options.get_bool_option (" java-unwind-enum-static" ))
551
- remove_static_init_loops (goto_model, options, get_message_handler ());
552
-
553
541
// get solver
554
542
cbmc_solverst cbmc_solvers (
555
543
options,
@@ -757,12 +745,10 @@ bool cbmc_parse_optionst::process_goto_program(
757
745
get_message_handler (),
758
746
goto_model,
759
747
cmdline.isset (" pointer-check" ));
760
- // Java virtual functions -> explicit dispatch tables:
748
+ // virtual functions -> explicit dispatch tables:
761
749
remove_virtual_functions (goto_model);
762
750
// remove catch and throw (introduces instanceof)
763
751
remove_exceptions (goto_model);
764
- // Similar removal of RTTI inspection:
765
- remove_instanceof (goto_model);
766
752
767
753
mm_io (goto_model);
768
754
@@ -775,30 +761,6 @@ bool cbmc_parse_optionst::process_goto_program(
775
761
remove_complex (goto_model);
776
762
rewrite_union (goto_model);
777
763
778
- // Similar removal of java nondet statements:
779
- // TODO Should really get this from java_bytecode_language somehow, but we
780
- // don't have an instance of that here.
781
- object_factory_parameterst factory_params;
782
- factory_params.max_nondet_array_length =
783
- cmdline.isset (" java-max-input-array-length" )
784
- ? std::stoul (cmdline.get_value (" java-max-input-array-length" ))
785
- : MAX_NONDET_ARRAY_LENGTH_DEFAULT;
786
- factory_params.max_nondet_string_length =
787
- cmdline.isset (" string-max-input-length" )
788
- ? std::stoul (cmdline.get_value (" string-max-input-length" ))
789
- : MAX_NONDET_STRING_LENGTH;
790
- factory_params.max_nondet_tree_depth =
791
- cmdline.isset (" java-max-input-tree-depth" )
792
- ? std::stoul (cmdline.get_value (" java-max-input-tree-depth" ))
793
- : MAX_NONDET_TREE_DEPTH;
794
-
795
- replace_java_nondet (goto_model);
796
-
797
- convert_nondet (
798
- goto_model,
799
- get_message_handler (),
800
- factory_params);
801
-
802
764
// add generic checks
803
765
status () << " Generic Property Instrumentation" << eom;
804
766
goto_check (options, goto_model);
@@ -873,7 +835,6 @@ bool cbmc_parse_optionst::process_goto_program(
873
835
874
836
// remove any skips introduced since coverage instrumentation
875
837
remove_skip (goto_model);
876
- goto_model.goto_functions .update ();
877
838
}
878
839
879
840
catch (const char *e)
@@ -1014,14 +975,6 @@ void cbmc_parse_optionst::help()
1014
975
" --cover CC create test-suite with coverage criterion CC\n " // NOLINT(*)
1015
976
" --mm MM memory consistency model for concurrent programs\n " // NOLINT(*)
1016
977
" \n "
1017
- " Java Bytecode frontend options:\n "
1018
- " --classpath dir/jar set the classpath\n "
1019
- " --main-class class-name set the name of the main class\n "
1020
- JAVA_BYTECODE_LANGUAGE_OPTIONS_HELP
1021
- // This one is handled by cbmc_parse_options not by the Java frontend,
1022
- // hence its presence here:
1023
- " --java-unwind-enum-static try to unwind loops in static initialization of enums\n "
1024
- " \n "
1025
978
" Semantic transformations:\n "
1026
979
// NOLINTNEXTLINE(whitespace/line_length)
1027
980
" --nondet-static add nondeterministic initialization of variables with static lifetime\n "
0 commit comments