code: def p_define(p):
      
      if ENABLED:
          if p[4]:
              if SPACES.match(p[4][0]):
                  p[4][0] = p[4][0][1:]
              else:
                  warning(p.lineno(1), "missing whitespace after the macro name")
  
          ID_TABLE.define(p[2], args=p[3], value=p[4], lineno=p.lineno(2),
                          fname=CURRENT_FILE[-1])
      p[0] = []
docs: define : DEFINE ID params defs