summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--preprocessor.py23
1 files changed, 8 insertions, 15 deletions
diff --git a/preprocessor.py b/preprocessor.py
index 67e4cdb9f..18e96dff0 100644
--- a/preprocessor.py
+++ b/preprocessor.py
@@ -314,26 +314,19 @@ def separate_comment(l):
asm = ""
comment = None
in_quotes = False
- in_comment = False
# token either belongs to the line or to the comment
for token in l:
- if in_comment:
+ if comment:
comment += token
- elif in_quotes and token != "\"":
- asm += token
- elif in_quotes and token == "\"":
- in_quotes = False
- asm += token
- elif not in_quotes and token == "\"":
- in_quotes = True
+ else:
+ if not in_quotes:
+ if token == ";":
+ comment = ";"
+ continue
+ if token == "\"":
+ in_quotes = not in_quotes
asm += token
- elif not in_quotes and token != "\"":
- if token == ";":
- in_comment = True
- comment = ";"
- else:
- asm += token
return asm, comment
def quote_translator(asm):