index = list.indexOf(elem);
index = list.indexOf(elem, 1);
7) PushAtIndex
- list.pushAtIdex(1);
+ list.pushAtIndex(1);
8) PushAfterElem
list.pushAfterElem(target, elem, 10); // find the first matched target from index 10,
// insert elem after target
// Model checker code
public static final String HEADER_CDSANNOTATE = "<cdsannotate.h>";
+ public static final String HEADER_COMMON = "<common.h>";
public static final String HEADER_SPECANNOTATION = "<specannotation.h>";
public static final String HEADER_CDSTRACE = "<cdstrace.h>";
// public static final String CDSAnnotate = "cdsannotate";
newCode.add(INCLUDE(HEADER_STDLIB));
newCode.add(INCLUDE(HEADER_STDINT));
newCode.add(INCLUDE(HEADER_CDSANNOTATE));
+ newCode.add(INCLUDE(HEADER_COMMON));
newCode.add(INCLUDE(HEADER_SPEC_LIB));
newCode.add(INCLUDE(HEADER_SPECANNOTATION));
newCode.add("");
// Init func_ptr_table
newCode.add(COMMENT("Init func_ptr_table"));
newCode.add(ASSIGN("func_ptr_table",
- "(void**) malloc(sizeof(void*) * 2)"));
+ "(void**) malloc(sizeof(void*) * " + semantics.interface2Num.size() + " * 2)"));
for (String interfaceName : semantics.interfaceName2Construct.keySet()) {
String interfaceNum = Integer.toString(semantics.interface2Num
.get(interfaceName));