home *** CD-ROM | disk | FTP | other *** search
/ Il CD di internet / CD.iso / SOURCE / D / FLEX / FLEX-2.4 / FLEX-2 / flex-2.4.7 / MISC / VMS / VMS.more-stuff / changes.vms next >
Encoding:
Text File  |  1990-11-26  |  3.6 KB  |  96 lines

  1. Changes to flex 2.3.6 to improve life on VMS
  2. 11/17/90 - Stuart McGraw, GTE Labs (sjm0@gte.com)
  3.  
  4. modified files:
  5. ---------------
  6. main.c
  7.     -- If foo doesn't exist, "flex -vpb foo" trys to dereference a
  8.     NULL pointer (causes access violation on VMS) because the error
  9.     calls flexend() which tries to print statistics (-v flag) before
  10.     the pointers it uses have been initialized.  Fixed by setting a
  11.     new variable 'initialized' just before flexinit() returns (after
  12.     everything's been initialized) and suppressing the statistics
  13.     report in flexend() if it isn't set.
  14.  
  15.     -- Use VMSCMDLN define to select original unix command line
  16.     parsing or alternate VMS command line parsing (done by including
  17.     vaxcmdln.c which contains the code).  This also required moving
  18.     a few snippets of code around to keep the unix-only and vms-only
  19.     sections contiguous.
  20.  
  21.     -- The VMS conditional for the exit status value in flexend()
  22.     was deleted since it better done by redefining exit() (done as
  23.     a CC command line macro though it could also be done in flexdef.h.)
  24.         This applies to all exits (error exits in scan.c and parse.c 
  25.     previously exited with VMS success status) and gets rid of the
  26.         annoying NONAME-W-NOMESSAGE message from VMS when an error occurs
  27.     in flex.
  28.  
  29.     -- VAXC generates a truly grotesque string for argv[0].  Added a
  30.     few lines of code if flexinit() to turn it into something reasonable.
  31.  
  32.     -- Made the name of the backtracking info file parameterizable.
  33.     This also lets flex print the actual name of the file out in error
  34.     messages (it would always print "lex.backtrack" before, even when
  35.     the name was lex.bck).
  36.  
  37. new files:
  38. ----------
  39. makefile.vms
  40.     Rewrote the previous makefile (Makefile.VMS).  Changes include:
  41.  
  42.     -- Allows building and installing either the unix-style command
  43.     line version of flex, or the VMS-style command line version.
  44.  
  45.     -- Use flex_exe, flex_library, and flex_manual for default names
  46.     rather than tools$$exe, tools$$library, and tools$$manual since
  47.     the latter violate DEC logical name recommendations ($ reserved
  48.     for DEC).
  49.  
  50.     -- Compile everything with /def="exit(s)=_exit((s)?0x1000002A:0)".
  51.     This will result in a VMS error status for all error exits 
  52.     (including those in the lexer and parser subroutines) with-
  53.     out requiring any source code changes.  It also gets rid of
  54.     those annoying NONAME-W-NOMESSAGE messages that occurred before
  55.     and changes the exit status from warning to error.
  56.  
  57.     -- Testing can be done using the local version of flex, or the
  58.     publicly installed version for flex's built with either command
  59.     line option.
  60.  
  61.     -- Reordered operations to make it easier to convert it to the
  62.     dclmake.com file.
  63.  
  64. dclmake.com
  65.     -- A dcl procedure to do the compiling/linking/testing/installing
  66.     done by makefile.vms for those without MAKE or MMS.
  67.  
  68. vaxcmdln.c
  69.     -- Contains code that is conditionally #included in flexinit()
  70.     (main.c) to handle VMS command line parsing.  In a separate file
  71.     so as not to clutter up the main code with alot of vms dependent 
  72.     junk.
  73.  
  74. cli.c
  75.     -- A couple of general purpose support routines for VMS command 
  76.     line parsing and called from the code in vmscmdln.c.  These are
  77.     just C language interfaces to two VMS system calls.
  78.  
  79. flex.cld_template
  80.     -- Command definition file for the VMS command line interface
  81.     sans the define verb and image lines.  Used to generate the local 
  82.     and public flex.cld files.
  83.  
  84. flex.hlp
  85.     -- VMS help file edited from the version 2.3.6 version flex.man
  86.     file for use with the VMS-style command line interface.
  87.  
  88. changes.vms
  89.     -- This file.
  90.  
  91. install.vms
  92.     -- Installation instructions for VMS.
  93.  
  94. README.VMS
  95.     -- A short pointer to the other files.
  96.