/[m4]/m4/modules/m4.c
ViewVC logotype

Diff of /m4/modules/m4.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.38 by gary, Fri Jun 13 13:54:36 2003 UTC revision 1.39 by gary, Mon Jun 16 10:43:45 2003 UTC
# Line 153  M4BUILTIN_HANDLER (define) Line 153  M4BUILTIN_HANDLER (define)
153    
154    if (argc == 2)    if (argc == 2)
155      {      {
156        m4_macro_define (M4ARG (1), NULL);        m4_macro_define (context, M4ARG (1), NULL);
157        return;        return;
158      }      }
159    
160    switch (TOKEN_TYPE (argv[2]))    switch (TOKEN_TYPE (argv[2]))
161      {      {
162      case M4_TOKEN_TEXT:      case M4_TOKEN_TEXT:
163        m4_macro_define (M4ARG (1), argv[2]);        m4_macro_define (context, M4ARG (1), argv[2]);
164        return;        return;
165    
166      case M4_TOKEN_FUNC:      case M4_TOKEN_FUNC:
167        m4_builtin_define (M4ARG (1), argv[2]);        m4_builtin_define (context, M4ARG (1), argv[2]);
168        return;        return;
169      }      }
170    
# Line 174  M4BUILTIN_HANDLER (define) Line 174  M4BUILTIN_HANDLER (define)
174    
175  M4BUILTIN_HANDLER (undefine)  M4BUILTIN_HANDLER (undefine)
176  {  {
177    if (!m4_symbol_lookup (M4ARG (1)))    if (!m4_symbol_lookup (M4SYMTAB, M4ARG (1)))
178      M4WARN ((warning_status, 0,      M4WARN ((warning_status, 0,
179               _("Warning: %s: undefined name: %s"), M4ARG (0), M4ARG (1)));               _("Warning: %s: undefined name: %s"), M4ARG (0), M4ARG (1)));
180    else    else
181      m4_symbol_delete (M4ARG (1));      m4_symbol_delete (M4SYMTAB, M4ARG (1));
182  }  }
183    
184  M4BUILTIN_HANDLER (pushdef)  M4BUILTIN_HANDLER (pushdef)
# Line 188  M4BUILTIN_HANDLER (pushdef) Line 188  M4BUILTIN_HANDLER (pushdef)
188    
189    if (argc == 2)    if (argc == 2)
190      {      {
191        m4_macro_pushdef (M4ARG (1), NULL);        m4_macro_pushdef (context, M4ARG (1), NULL);
192        return;        return;
193      }      }
194    
195    switch (TOKEN_TYPE (argv[2]))    switch (TOKEN_TYPE (argv[2]))
196      {      {
197      case M4_TOKEN_TEXT:      case M4_TOKEN_TEXT:
198        m4_macro_pushdef (M4ARG (1), argv[2]);        m4_macro_pushdef (context, M4ARG (1), argv[2]);
199        return;        return;
200    
201      case M4_TOKEN_FUNC:      case M4_TOKEN_FUNC:
202        m4_builtin_pushdef (M4ARG (1), argv[2]);        m4_builtin_pushdef (context, M4ARG (1), argv[2]);
203        return;        return;
204      }      }
205    
# Line 209  M4BUILTIN_HANDLER (pushdef) Line 209  M4BUILTIN_HANDLER (pushdef)
209    
210  M4BUILTIN_HANDLER (popdef)  M4BUILTIN_HANDLER (popdef)
211  {  {
212    if (!m4_symbol_lookup (M4ARG (1)))    if (!m4_symbol_lookup (M4SYMTAB, M4ARG (1)))
213      M4WARN ((warning_status, 0,      M4WARN ((warning_status, 0,
214               _("Warning: %s: undefined name: %s"), M4ARG (0), M4ARG (1)));               _("Warning: %s: undefined name: %s"), M4ARG (0), M4ARG (1)));
215    else    else
216      m4_symbol_popdef (M4ARG (1));      m4_symbol_popdef (M4SYMTAB, M4ARG (1));
217  }  }
218    
219    
# Line 227  M4BUILTIN_HANDLER (ifdef) Line 227  M4BUILTIN_HANDLER (ifdef)
227    m4_symbol *symbol;    m4_symbol *symbol;
228    const char *result;    const char *result;
229    
230    symbol = m4_symbol_lookup (M4ARG (1));    symbol = m4_symbol_lookup (M4SYMTAB, M4ARG (1));
231    
232    if (symbol)    if (symbol)
233      result = M4ARG (2);      result = M4ARG (2);
# Line 292  M4BUILTIN_HANDLER (dumpdef) Line 292  M4BUILTIN_HANDLER (dumpdef)
292    const m4_builtin *bp;    const m4_builtin *bp;
293    
294    data.obs = obs;    data.obs = obs;
295    m4_dump_symbols (&data, argc, argv, TRUE);    m4_dump_symbols (context, &data, argc, argv, TRUE);
296    
297    for (; data.size > 0; --data.size, data.base++)    for (; data.size > 0; --data.size, data.base++)
298      {      {
299        m4_symbol *symbol = m4_symbol_lookup (data.base[0]);        m4_symbol *symbol = m4_symbol_lookup (M4SYMTAB, data.base[0]);
300    
301        fprintf (stderr, "%s:\t", data.base[0]);        fprintf (stderr, "%s:\t", data.base[0]);
302        assert (SYMBOL_TYPE (symbol) == M4_TOKEN_TEXT        assert (SYMBOL_TYPE (symbol) == M4_TOKEN_TEXT
# Line 332  M4BUILTIN_HANDLER (defn) Line 332  M4BUILTIN_HANDLER (defn)
332  {  {
333    m4_symbol *symbol;    m4_symbol *symbol;
334    
335    symbol = m4_symbol_lookup (M4ARG (1));    symbol = m4_symbol_lookup (M4SYMTAB, M4ARG (1));
336    if (symbol == NULL)    if (symbol == NULL)
337      {      {
338        M4WARN ((warning_status, 0,        M4WARN ((warning_status, 0,
# Line 556  M4BUILTIN_HANDLER (m4exit) Line 556  M4BUILTIN_HANDLER (m4exit)
556      exit_code = 0;      exit_code = 0;
557    
558    /* Ensure any module exit callbacks are executed.  */    /* Ensure any module exit callbacks are executed.  */
559    m4__module_exit ();    m4__module_exit (context);
560    
561    exit (exit_code);    exit (exit_code);
562  }  }
# Line 594  M4BUILTIN_HANDLER (traceon) Line 594  M4BUILTIN_HANDLER (traceon)
594    int i;    int i;
595    
596    if (argc == 1)    if (argc == 1)
597      m4_symtab_apply (set_trace, (void *) obs);      m4_symtab_apply (M4SYMTAB, set_trace, (void *) obs);
598    else    else
599      for (i = 1; i < argc; i++)      for (i = 1; i < argc; i++)
600        {        {
601          const char *name = M4ARG (i);          const char *name = M4ARG (i);
602          m4_symbol *symbol = m4_symbol_lookup (name);          m4_symbol *symbol = m4_symbol_lookup (M4SYMTAB, name);
603          if (symbol != NULL)          if (symbol != NULL)
604            set_trace (NULL, NULL, symbol, (char *) obs);            set_trace (NULL, NULL, symbol, (char *) obs);
605          else          else
# Line 614  M4BUILTIN_HANDLER (traceoff) Line 614  M4BUILTIN_HANDLER (traceoff)
614    int i;    int i;
615    
616    if (argc == 1)    if (argc == 1)
617      m4_symtab_apply (set_trace, NULL);      m4_symtab_apply (M4SYMTAB, set_trace, NULL);
618    else    else
619      for (i = 1; i < argc; i++)      for (i = 1; i < argc; i++)
620        {        {
621          const char *name = M4ARG (i);          const char *name = M4ARG (i);
622          m4_symbol *symbol = m4_symbol_lookup (name);          m4_symbol *symbol = m4_symbol_lookup (M4SYMTAB, name);
623          if (symbol != NULL)          if (symbol != NULL)
624            set_trace (NULL, NULL, symbol, NULL);            set_trace (NULL, NULL, symbol, NULL);
625          else          else

Legend:
Removed from v.1.38  
changed lines
  Added in v.1.39

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26