> C30 is like this as well. It knows there is a syntax error in that it has > reached something without finding a closing bracket, why does it need to use > a catch-all error message??? - because the C syntax is so 'dense' that in most cases there is more than one possible correct continuation (and probably at more than one point in the line) - because in the presence of macro's it makes no sense to indicate the position in the line which caused the error - because of the above most C parser (scanner/tokenizer/lexer) are bottom-up parsers, optimized for speed, not for accurate error reporting - most C compilers seem to think it is more important to continue compiling in order to report more errors than to report errors accurately Back in my Jal days some people critized me for writing my own top-down parser. Like most compilers for Algol-type languages it reported the first error (and only the first), but fairly accurately, bot in position and in the kind of error. -- Wouter van Ooijen -- ------------------------------------------- Van Ooijen Technische Informatica: www.voti.nl consultancy, development, PICmicro products docent Hogeschool van Utrecht: www.voti.nl/hvu -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist