Commit 145834ffd115143724efe6ebdeabb6dbda57dcb4
1 parent
28d7348f
dodana obsługa #else
git-svn-id: svn://svn.nlp.ipipan.waw.pl/morfeusz/morfeusz@160 ff4e3ee1-f430-4e82-ade0-24591c43f1fd
Showing
1 changed file
with
2 additions
and
4 deletions
fsabuilder/morfeuszbuilder/segrules/preprocessor.py
... | ... | @@ -94,14 +94,12 @@ def preprocess(inputLines, defs, filename): |
94 | 94 | elif line.startswith('#else'): |
95 | 95 | name, isActive = ifdefsStack[-1] |
96 | 96 | assert isActive |
97 | - ifdefsStack[-1] = name, False | |
97 | + ifdefsStack[-1] = (name, False) | |
98 | 98 | # ifdefsStack.pop() |
99 | 99 | elif line.startswith('#endif'): |
100 | 100 | ifdefsStack.pop() |
101 | 101 | elif line.startswith('#'): |
102 | 102 | yield lineNum, line |
103 | - elif len(ifdefsStack) == 0 or \ | |
104 | - (all(map(lambda (name, isActive): name in defs and isActive, ifdefsStack)) | |
105 | - and not any(map(lambda (name, isActive): name in defs and not isActive, ifdefsStack))): | |
103 | + elif len(ifdefsStack) == 0 or all(map(lambda (name, isActive): (name in defs and isActive) or (name not in defs and not isActive), ifdefsStack)): | |
106 | 104 | yield lineNum, _processLine(lineNum, line, defines, filename) |
107 | 105 | |
108 | 106 | \ No newline at end of file |
... | ... |