1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-15 12:15:47 +02:00

Fix FastCPartitionScanner corner cases

This commit is contained in:
Anton Leherbauer 2006-10-02 20:11:03 +00:00
parent 546696ebb3
commit 03f01c56b8

View file

@ -201,6 +201,7 @@ public final class FastCPartitionScanner implements IPartitionTokenScanner, ICPa
case SINGLE_LINE_COMMENT: case SINGLE_LINE_COMMENT:
case CHARACTER: case CHARACTER:
case STRING: case STRING:
case PREPROCESSOR:
int last; int last;
int newState; int newState;
@ -235,6 +236,11 @@ public final class FastCPartitionScanner implements IPartitionTokenScanner, ICPa
newState= CCODE; newState= CCODE;
break; break;
case '#':
last= NONE;
newState= PREPROCESSOR;
break;
default: default:
last= NONE; last= NONE;
newState= CCODE; newState= CCODE;
@ -260,10 +266,6 @@ public final class FastCPartitionScanner implements IPartitionTokenScanner, ICPa
} }
break; break;
case PREPROCESSOR:
fLast= NONE; // ignore fLast
return preFix(fState, CCODE, NONE, 1);
default: default:
break; break;
} }
@ -405,8 +407,8 @@ public final class FastCPartitionScanner implements IPartitionTokenScanner, ICPa
case '/': case '/':
if (fLast == STAR) { if (fLast == STAR) {
fState= PREPROCESSOR; fState= PREPROCESSOR;
consume();
} }
consume();
break; break;
default: default: