/[m4]/m4/src/freeze.c
ViewVC logotype

Diff of /m4/src/freeze.c

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

revision 1.27 by gary, Mon Jun 16 16:29:06 2003 UTC revision 1.28 by gary, Tue Jun 17 15:17:45 2003 UTC
# Line 473  reload_frozen_state (m4 *context, const Line 473  reload_frozen_state (m4 *context, const
473    
474            if (bp)            if (bp)
475              {              {
476                m4_token token;                m4_token *token = XCALLOC (m4_token, 1);
               int flags = 0;  
477    
478                if (bp->groks_macro_args)                if (bp->groks_macro_args)
479                  BIT_SET (flags, TOKEN_MACRO_ARGS_BIT);                  BIT_SET (TOKEN_FLAGS (token), TOKEN_MACRO_ARGS_BIT);
480                if (bp->blind_if_no_args)                if (bp->blind_if_no_args)
481                  BIT_SET (flags, TOKEN_BLIND_ARGS_BIT);                  BIT_SET (TOKEN_FLAGS (token), TOKEN_BLIND_ARGS_BIT);
482    
483                bzero (&token, sizeof (m4_token));                TOKEN_TYPE (token)        = M4_TOKEN_FUNC;
484                TOKEN_TYPE (&token)       = M4_TOKEN_FUNC;                TOKEN_FUNC (token)        = bp->func;
485                TOKEN_FUNC (&token)       = bp->func;                TOKEN_HANDLE (token)      = handle;
486                TOKEN_HANDLE (&token)     = handle;                TOKEN_MIN_ARGS (token)    = bp->min_args;
487                TOKEN_FLAGS (&token)      = flags;                TOKEN_MAX_ARGS (token)    = bp->max_args;
               TOKEN_MIN_ARGS (&token)   = bp->min_args;  
               TOKEN_MAX_ARGS (&token)   = bp->max_args;  
488    
489                m4_builtin_pushdef (context, string[0], &token);                m4_symbol_pushdef (M4SYMTAB, string[0], token);
490              }              }
491            else            else
492              M4ERROR ((warning_status, 0,              M4ERROR ((warning_status, 0,
# Line 658  reload_frozen_state (m4 *context, const Line 655  reload_frozen_state (m4 *context, const
655    
656          /* Enter a macro having an expansion text as a definition.  */          /* Enter a macro having an expansion text as a definition.  */
657          {          {
658            m4_token token;            m4_token *token = XCALLOC (m4_token, 1);
659            lt_dlhandle handle = 0;            lt_dlhandle handle = 0;
660    
661            if (number[2] > 0)            if (number[2] > 0)
# Line 666  reload_frozen_state (m4 *context, const Line 663  reload_frozen_state (m4 *context, const
663                if (strcmp (m4_get_module_name (handle), string[2]) == 0)                if (strcmp (m4_get_module_name (handle), string[2]) == 0)
664                  break;                  break;
665    
666            bzero (&token, sizeof (m4_token));            TOKEN_TYPE (token)            = M4_TOKEN_TEXT;
667            TOKEN_TYPE (&token)           = M4_TOKEN_TEXT;            TOKEN_TEXT (token)            = xstrdup (string[1]);
668            TOKEN_TEXT (&token)           = string[1];            TOKEN_HANDLE (token)          = handle;
669            TOKEN_HANDLE (&token)         = handle;            TOKEN_MAX_ARGS (token)        = -1;
           TOKEN_MAX_ARGS (&token)       = -1;  
670    
671            m4_macro_pushdef (context, string[0], &token);            m4_symbol_pushdef (M4SYMTAB, string[0], token);
672          }          }
673          break;          break;
674    

Legend:
Removed from v.1.27  
changed lines
  Added in v.1.28

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