DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(m4.info.gz) Dumpdef

Info Catalog (m4.info.gz) Debugging (m4.info.gz) Trace
 
 6.1 Displaying macro definitions
 ================================
 
 If you want to see what a name expands into, you can use the builtin
 `dumpdef':
 
  -- Builtin: dumpdef (...)
      Accepts any number of arguments.  If called without any arguments,
      it displays the definitions of all known names, otherwise it
      displays the definitions of the names given.  The output is
      printed to the current debug file (usually standard error), and is
      sorted by name.  If an unknown name is encountered, a warning is
      printed.
 
      The expansion of `dumpdef' is void.
 
      define(`foo', `Hello world.')
      =>
      dumpdef(`foo')
      error-->foo: `Hello world.'
      =>
      dumpdef(`define')
      error-->define: <define>
      =>
 
    The last example shows how builtin macros definitions are displayed.
 The definition that is dumped corresponds to what would occur if the
 macro were to be called at that point, even if other definitions are
 still live due to redefining a macro during argument collection.
 
      pushdef(`f', ``$0'1')pushdef(`f', ``$0'2')
      =>
      f(popdef(`f')dumpdef(`f'))
      error-->f: ``$0'1'
      =>f2
      f(popdef(`f')dumpdef(`f'))
      error-->m4:stdin:3: undefined macro `f'
      =>f1
 
     Debug Levels, for information on controlling the details of
 the display.
 
Info Catalog (m4.info.gz) Debugging (m4.info.gz) Trace
automatically generated byinfo2html