improved error messages
This commit is contained in:
		
							parent
							
								
									d4bcec7ec2
								
							
						
					
					
						commit
						d57dfac961
					
				
					 2 changed files with 14 additions and 12 deletions
				
			
		| 
						 | 
					@ -19,7 +19,7 @@ LLmessage(tk)	{
 | 
				
			||||||
		error("end of file expected");
 | 
							error("end of file expected");
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	else if (tk)	{
 | 
						else if (tk)	{
 | 
				
			||||||
		error("%s missing", symbol2str(tk));
 | 
							error("%s missing before %s", symbol2str(tk), symbol2str(DOT));
 | 
				
			||||||
		insert_token(tk);
 | 
							insert_token(tk);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	else	{
 | 
						else	{
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,19 +1,17 @@
 | 
				
			||||||
cat <<'--EOT--'
 | 
					cat <<'--EOT--'
 | 
				
			||||||
/* Generated by make.tokcase */
 | 
					/* Generated by make.tokcase */
 | 
				
			||||||
/* $Header: */
 | 
					/* $Header$ */
 | 
				
			||||||
#include "Lpars.h"
 | 
					#include "Lpars.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
char *
 | 
					char *
 | 
				
			||||||
symbol2str(tok)
 | 
					symbol2str(tok)
 | 
				
			||||||
	int tok;
 | 
						int tok;
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static char buf[2] = { '\0', '\0' };
 | 
					#define SIZBUF	8
 | 
				
			||||||
 | 
						/* allow for a few invocations in f.i. an argument list */
 | 
				
			||||||
 | 
						static char buf[SIZBUF];
 | 
				
			||||||
 | 
						static int index;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (040 <= tok && tok < 0177) {
 | 
					 | 
				
			||||||
		buf[0] = tok;
 | 
					 | 
				
			||||||
		buf[1] = '\0';
 | 
					 | 
				
			||||||
		return buf;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	switch (tok) {
 | 
						switch (tok) {
 | 
				
			||||||
--EOT--
 | 
					--EOT--
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,15 +22,19 @@ s/.*{\(.*\),.*\(".*"\).*$/	case \1 :\
 | 
				
			||||||
'
 | 
					'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cat <<'--EOT--'
 | 
					cat <<'--EOT--'
 | 
				
			||||||
 | 
						default:
 | 
				
			||||||
 | 
							if (tok < 040 || tok >= 0177) {
 | 
				
			||||||
 | 
								return "bad token";
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							/* fall through */
 | 
				
			||||||
	case '\n':
 | 
						case '\n':
 | 
				
			||||||
	case '\f':
 | 
						case '\f':
 | 
				
			||||||
	case '\v':
 | 
						case '\v':
 | 
				
			||||||
	case '\r':
 | 
						case '\r':
 | 
				
			||||||
	case '\t':
 | 
						case '\t':
 | 
				
			||||||
		buf[0] = tok;
 | 
							index = (index+2) & (SIZBUF-1);
 | 
				
			||||||
		return buf;
 | 
							buf[index] = tok;
 | 
				
			||||||
	default:
 | 
							return &buf[index];
 | 
				
			||||||
		return "bad token";
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
--EOT--
 | 
					--EOT--
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue