view tests/agcl/parsifal/t201a.syn @ 15:f5acaf0c8a29

Don't cast through "volatile int". Causes a gcc warning nowadays. XXX: should put something else back here to frighten the optimizer
author David A. Holland
date Tue, 31 May 2022 01:00:55 -0400
parents 13d2b8934445
children
line wrap: on
line source

letter = 'a-z' + 'A-Z'
digit = '0-9'
eof = 0

universe = ~eof

nonprintable = 1..8

printable = (universe - nonprintable) - (letter - 'p-q')

name
 -> letter                               =1;
 -> name, letter + digit                 =2;


hex digit, text
 -> digit
 -> 'a-f'
 -> 'A-F'

hex number
 -> "0x", hex digit                   =1;
 -> hex number , hex digit            =4;

number
 -> digit
 -> number, digit

token
 -> name
 -> number
 -> hex number
 -> '/', printable
 -> '|', nonprintable
 -> '!', universe

 grammar
  -> token, eof