From af87fececa752945d6a413a9134c6065847cbc70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Marjam=C3=A4ki?= Date: Mon, 19 Jan 2009 17:47:43 +0000 Subject: [PATCH] preprocessor: Activated the include handling --- src/preprocessor.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/preprocessor.cpp b/src/preprocessor.cpp index 55639a32f..112c5e094 100644 --- a/src/preprocessor.cpp +++ b/src/preprocessor.cpp @@ -256,7 +256,7 @@ void Preprocessor::preprocess(std::istream &istr, std::string &processedFile, st // Remove space characters that are after or before new line character processedFile = removeSpaceNearNL(processedFile); -// processedFile = handleIncludes(processedFile); + processedFile = handleIncludes(processedFile); processedFile = replaceIfDefined(processedFile); @@ -472,7 +472,6 @@ std::string Preprocessor::handleIncludes(std::string code) while ((pos = code.find("#include", pos)) != std::string::npos) { // Accept only includes that are at the start of a line - // TODO, multi line strings can contain includes that break this if (pos > 0 && code[pos-1] != '\n') continue; @@ -500,7 +499,7 @@ std::string Preprocessor::handleIncludes(std::string code) // Remove space characters that are after or before new line character processedFile = removeSpaceNearNL(processedFile); - processedFile = "#file \"" + filename + "\"\n" + processedFile + "#endfile"; + processedFile = "#file \"" + filename + "\"\n" + processedFile + "\n#endfile"; code.insert(pos, processedFile); } }