tweak
[cdsspec-compiler.git] / src / edu / uci / eecs / specCompiler / codeGenerator / CodeGenerator.java
index 20f6e53f9ecd90d45c0624d34b2ead19e4646db3..d38bba7f645c6191ff6b73bed4cf477477cda73e 100644 (file)
@@ -159,11 +159,13 @@ public class CodeGenerator {
                for (int i = 0; i < additions.size(); i++) {
                        CodeAddition addition = additions.get(i);
                        if (curSrcLine <  addition.lineNum) {
-                               newContent.addAll(content.subList(curSrcLine, addition.lineNum - 1));
+                               // Be careful, subList is the interval [begin, end)
+                               newContent.addAll(content.subList(curSrcLine, addition.lineNum));
                                curSrcLine = addition.lineNum;
                        }
                        newContent.addAll(addition.newCode);
                }
+               newContent.addAll(content.subList(curSrcLine, content.size()));
                return newContent;
        }
 
@@ -204,11 +206,13 @@ public class CodeGenerator {
        public static void main(String[] argvs) {
                String homeDir = Environment.HOME_DIRECTORY;
                File[] srcFiles = {
-                new File(homeDir + "/benchmark/linuxrwlocks/linuxrwlocks.c") };
-//             new File(homeDir
-//                             + "/benchmark/cliffc-hashtable/simplified_cliffc_hashtable.h"), };
-               // new File(homeDir + "/benchmark/ms-queue/my_queue.c"),
-               // new File(homeDir + "/benchmark/ms-queue/my_queue.h") };
+//                             new File(Environment.MODEL_CHECKER_TEST_DIR + "/backup_linuxrwlocks.c") };
+//              new File(homeDir + "/benchmark/linuxrwlocks/linuxrwlocks.c") };
+               new File(homeDir
+                               + "/benchmark/cliffc-hashtable/simplified_cliffc_hashtable.h"), };
+//              new File(homeDir + "/benchmark/ms-queue/my_queue.c"),
+//              new File(homeDir + "/benchmark/ms-queue/my_queue.c") };
+//             new File(homeDir + "/benchmark/test/test.c") };
                CodeGenerator gen = new CodeGenerator(srcFiles);
                gen.generateCode();
        }