%{
int line = 1; /* New variable for counting line number*/
int comment = 0;
int debug=1; /* prints out debug statements if desired */
%}
%%
"\n" {line++;
if (!comment) printf("\n");} /* New rule to ignore new lines when they're in comments*/
"/*" {
if (comment && debug) fprintf(stderr,
" >>>>>>>> line %d: Possible Nested comment <<<<<<<<<<\n", line); /*Added ", line" inside fprintf to match line to %d*/
comment = 1;
}
"*/" {
if (!comment) printf("%s",yytext); /*print out if it is not in a comment */
comment = 0;
}
. { if (!comment) printf("%s",yytext);}
%%
int yywrap(void)
{ return 1;
}
int main()
{
yylex();
}
CiV7CiAgICAgICAgaW50IGxpbmUgPSAxOyAvKiBOZXcgdmFyaWFibGUgZm9yIGNvdW50aW5nIGxpbmUgbnVtYmVyKi8KICAgICAgICBpbnQgY29tbWVudCA9IDA7CiAgICAgICAgaW50IGRlYnVnPTE7ICAvKiBwcmludHMgb3V0IGRlYnVnIHN0YXRlbWVudHMgaWYgZGVzaXJlZCAqLwolfQolJQoiXG4iICAgIHtsaW5lKys7CiAgICAgICAgICBpZiAoIWNvbW1lbnQpIHByaW50ZigiXG4iKTt9ICAvKiBOZXcgcnVsZSB0byBpZ25vcmUgbmV3IGxpbmVzIHdoZW4gdGhleSdyZSBpbiBjb21tZW50cyovCiIvKiIJewoJaWYgKGNvbW1lbnQgJiYgZGVidWcpIGZwcmludGYoc3RkZXJyLAoJCSIgPj4+Pj4+Pj4gbGluZSAlZDogUG9zc2libGUgTmVzdGVkIGNvbW1lbnQgPDw8PDw8PDw8PFxuIiwgbGluZSk7IC8qQWRkZWQgIiwgbGluZSIgaW5zaWRlIGZwcmludGYgdG8gbWF0Y2ggbGluZSB0byAlZCovCgljb21tZW50ID0gMTsKCX0KCiIqLyIJewogICAgICAgICAgaWYgKCFjb21tZW50KSBwcmludGYoIiVzIix5eXRleHQpOyAvKnByaW50IG91dCBpZiBpdCBpcyBub3QgaW4gYSBjb21tZW50ICovCiAgCSAgY29tbWVudCA9IDA7Cgl9Ci4gICAgICAgeyBpZiAoIWNvbW1lbnQpIHByaW50ZigiJXMiLHl5dGV4dCk7fQoKJSUKCmludCB5eXdyYXAodm9pZCkKeyByZXR1cm4gMTsKfQoKaW50IG1haW4oKQp7CiAgeXlsZXgoKTsKICAKfQoK