home *** CD-ROM | disk | FTP | other *** search
/ BURKS 2 / BURKS_AUG97.ISO / SLAKWARE / D2 / M4.TGZ / M4.tar / usr / doc / m4 / NEWS next >
Text File  |  1995-01-17  |  7KB  |  201 lines

  1. GNU m4 NEWS - User visible changes.
  2. Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
  3.  
  4. Version 1.4 - October 1994, by Franc,ois Pinard
  5.  
  6. (No user visible changes)
  7.  
  8. Version 1.3 - September 1994, by Franc,ois Pinard
  9.  
  10. * Diversions are created as needed.  Option `-N' is still accepted, but
  11. otherwise ignored.  Users should use only negative diversion numbers,
  12. instead of high positive numbers, for diverting to nowhere.
  13.  
  14. * Diversions should also work faster.  No temporary files will be needed
  15. at all if all diversions taken altogether do not use more than 512K.
  16.  
  17. * Frozen state files may be produced with the `--freeze-state' (-F)
  18. option and later brought back through the `--reload-state' (-R) option.
  19.  
  20. Version 1.2 - July 1994, by Franc,ois Pinard
  21.  
  22. * In patsubst(STRING, REGEXP, REPLACEMENT), \& in REPLACEMENT has been
  23. changed to represent this part of STRING matched by the whole REGEXP,
  24. instead of the whole STRING as before.  \0 does the same, but emits a
  25. diagnostic saying it will disappear in some subsequent release.
  26.  
  27. * eval(EXPR) emits a diagnostic if EXPR has suffixed crumb.  The same for
  28. other numeric conversions in incr(), decr(), divert(), etc.
  29.  
  30. * `--fatal-warnings' (-E) stops execution at first warning.
  31.  
  32. * `--nesting-limit=LEVEL' (-L LEVEL) sets a limit to macro nesting.
  33. It is initially fixed at 250.
  34.  
  35. * `--word-regexp=REGEXP' (-W REGEXP) modifies macro name syntax, like
  36. does the new `changeword(REGEXP)' macro.  This feature is experimental,
  37. tell me your opinions about it.  You do need --enable-changeword at
  38. configure time to get these things.  Do *not* depend on them yet.
  39.  
  40. * Trace output format is scannable by GNU Emacs' next-error function.
  41.  
  42. * Stack overflow is detected and diagnosed on some capable systems.
  43.  
  44. * Various bugs have been corrected, m4 should be more portable.  See the
  45. ChangeLog for details.
  46.  
  47. Version 1.1 - November 1993, by Franc,ois Pinard
  48.  
  49. Changes which might affect existing GNU m4 scripts:
  50.  
  51. * Option `-V' has been removed, use `--version' instead.  `--version'
  52. writes on standard output instead of standard error, and inhibits any
  53. script execution.
  54.  
  55. * `--no-gnu-extensions' has been renamed `--traditional'.
  56.  
  57. * In `eval', `^' used to indicate exponentiation, use `**' instead.
  58.  
  59. * The automatic undiversion which takes place at end of all input is
  60. forced into the main output stream.
  61.  
  62. Changes which are unlikely to affect existing scripts:
  63.  
  64. * `--help' prints an usage summary on standard output.  Script execution
  65. is then inhibited.
  66.  
  67. * `--prefix-builtins' (-P) prefixes all builtin macros by `m4_'.
  68.  
  69. * Most builtin macros for which arguments are mandatory, called without
  70. any arguments, are no more recognized as builtin macros: they are
  71. consequently copied verbatim to the output stream.
  72.  
  73. * `define' and `pushdef' are usable with only one argument, they give
  74. this argument an empty definition.
  75.  
  76. * `eval' new operators for binary representation handling: `^' for
  77. exclusive-or, `~' for the bitwise negation, `<<' and `>>' for shifts.
  78.  
  79. * `eval' recognizes the notation 0bDIGITS for binary numbers and the
  80. notation 0rRADIX:DIGITS for numbers in any radix from 1 to 36.
  81.  
  82. Version 1.0.3 - December 1992, by Franc,ois Pinard
  83.  
  84. Changes for the user:
  85.  
  86. * `dnl' outputs a diagnostic if immediately followed by `('.  Usually,
  87. `dnl' is followed by newline or whitespace.
  88.  
  89. * `ifelse' accepts without complaining the common idiom of having only
  90. one argument.  This is useful for introducing long comments.
  91.  
  92. * `eval' always expresses values as signed, whatever the radix.
  93.  
  94. * M4OPTS environment variable is no longer obeyed.
  95.  
  96. * `--no-warnings' option is renamed `--silent'.
  97.  
  98. * Debug lines use a new format more compatible with GNU standards.
  99.  
  100. * Various bugs have been corrected.  See the ChangeLog for details.
  101.  
  102. Changes for the installer:
  103.  
  104. * GNU m4 now uses an Autoconf-generated configure script, and should be
  105. more easily portable in many ways.  (Cray is not supported yet).
  106.  
  107. * `make check' has been made more portable, expect no errors.
  108.  
  109. Changes for the programmer:
  110.  
  111. * Sources have been fully reindented to comply with GNU standards, and
  112. cleaned up in many ways.
  113.  
  114. * Sources have been protoized.  Non-ANSI compilers are automatically
  115. detected, then sources are unprotoized on the fly before compilation.
  116.  
  117. * GNU m4 uses newer versions of obstack, regex, getopt, etc.
  118.  
  119. Version 1.0 - October 1991, by Rene' Seindal
  120.  
  121. * Uses GNU configure, taken from the gdb distribution.
  122.  
  123. * Uses GNU getopt(), with long option names.
  124.  
  125. * The -Q/+quiet option is added, which suppresses warnings about missing
  126. or superflous arguments to built-in macros.
  127.  
  128. * Added default options via the M4OPTS environment variable.
  129.  
  130. * Several minor bugs have been fixed.
  131.  
  132. Version 0.99 - July 1991, by Rene' Seindal
  133.  
  134. * The builtins `incr' and `decr' are now implemented without use of
  135. `eval'.
  136.  
  137. * The builtin `indir' is added, to allow for indirect macro calls
  138. (allows use of "illegal" macro names).
  139.  
  140. * The debugging and tracing facilities has been enhanced considerably.
  141. See the manual for details.
  142.  
  143. * The -tMACRO option is added, marks MACRO for tracing as soon as it
  144. is defined.
  145.  
  146. * Builtins are traced after renaming iff they were before.
  147.  
  148. * Named files can now be undiverted.
  149.  
  150. * The -Nnum option can be used to increase the number of divertions
  151. available.
  152.  
  153. * Calling changecom without arguments now disables all comment handling.
  154.  
  155. * A bug in `dnl' is fixed.
  156.  
  157. * A bug in the multi-character quoting code is fixed.
  158.  
  159. * Several typos in the manual has been corrected.  More probably persist.
  160.  
  161. Version 0.75 - November 1990, by Rene' Seindal
  162.  
  163. * Implemented search path for include files (-I option and M4PATH
  164. environment variable).
  165.  
  166. * Implemented builtin `format' for printf-like formatting.
  167.  
  168. * Implemented builtin `regexp' for searching for regular expressions.
  169.  
  170. * Implemented builtin `patsubst' for substitution with regular
  171. expressions.
  172.  
  173. * Implemented builtin `esyscmd', which expands to a shell commands output.
  174.  
  175. * Implemented `__file__' and `__line__' for use in error messages.
  176.  
  177. * Implemented character ranges in `translit'.
  178.  
  179. * Implemented control over debugging output.
  180.  
  181. * Implemented multi-character quotes.
  182.  
  183. * Implemented multi-character comment delimiters.
  184.  
  185. * Changed predefined macro `gnu' to `__gnu__'.
  186.  
  187. * Changed predefined macro `unix' to `__unix__', when the -G option is
  188. not used.  With -G, `unix' is still defined.
  189.  
  190. * Added program name to error messages.
  191.  
  192. * Fixed two missing null bytes bugs.
  193.  
  194. Version 0.50 - January 1990, by Rene' Seindal
  195.  
  196. * Initial beta release.
  197.  
  198. Local Variables:
  199. fill-column: 75
  200. End:
  201.