Sfoglia il codice sorgente

cppparser: In preprocess mode, add newline when switching files

rdb 1 anno fa
parent
commit
e1870047c6
1 ha cambiato i file con 7 aggiunte e 1 eliminazioni
  1. 7 1
      dtool/src/cppparser/cppPreprocessor.cxx

+ 7 - 1
dtool/src/cppparser/cppPreprocessor.cxx

@@ -404,7 +404,13 @@ preprocess_file(const Filename &filename) {
     }
     next_space = (token._token != '(' && token._token != '~');
     token.output_code(std::cout);
-    token = get_next_token();
+
+    CPPToken next_token = get_next_token();
+    if (next_token._lloc.file != token._lloc.file) {
+      // Switched to a new file, reset the line number.
+      line_number = 0;
+    }
+    token = next_token;
   }
   std::cout << "\n";