aboutsummaryrefslogtreecommitdiffstats
path: root/z05.c
diff options
context:
space:
mode:
Diffstat (limited to 'z05.c')
-rw-r--r--z05.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/z05.c b/z05.c
index 75035f8..f97f561 100644
--- a/z05.c
+++ b/z05.c
@@ -1,6 +1,6 @@
/*@z05.c:Read Definitions:ReadLangDef()@**************************************/
/* */
-/* THE LOUT DOCUMENT FORMATTING SYSTEM (VERSION 3.34) */
+/* THE LOUT DOCUMENT FORMATTING SYSTEM (VERSION 3.35) */
/* COPYRIGHT (C) 1991, 2007 Jeffrey H. Kingston */
/* */
/* Jeffrey H. Kingston (jeff@it.usyd.edu.au) */
@@ -278,6 +278,7 @@ static void ReadTokenList(OBJECT token, OBJECT res)
case GET_CONTEXT:
case BREAK:
case UNDERLINE:
+ case UNDERLINE_COLOUR:
case COLOUR:
case TEXTURE:
case OUTLINE:
@@ -752,6 +753,7 @@ void ReadDefinitions(OBJECT *token, OBJECT encl, unsigned char res_type)
/* find precedence clause, if any */
if( is_string(t, KW_PRECEDENCE) )
{ int prec = 0;
+ UnSuppressScope();
Dispose(t);
t = LexGetToken();
while( type(t) == WORD && decimaldigit(string(t)[0]) )
@@ -759,6 +761,7 @@ void ReadDefinitions(OBJECT *token, OBJECT encl, unsigned char res_type)
prec = prec * 10 + digitchartonum(string(t)[0]);
Dispose(t); t = LexGetToken();
}
+ SuppressScope();
if( prec < MIN_PREC )
{ Error(5, 37, "precedence is too low (%d substituted)",
@@ -775,10 +778,13 @@ void ReadDefinitions(OBJECT *token, OBJECT encl, unsigned char res_type)
/* find associativity clause, if any */
if( is_string(t, KW_ASSOC) )
- { Dispose(t); t = LexGetToken();
+ {
+ UnSuppressScope();
+ Dispose(t); t = LexGetToken();
if( is_string(t, KW_LEFT) ) right_assoc(res) = FALSE;
else if( !is_string(t, KW_RIGHT) )
Error(5, 39, "associativity altered to %s", WARN, &fpos(t), KW_RIGHT);
+ SuppressScope();
Dispose(t); t = LexGetToken();
}