H------------------------------------------------------------------------"_Title: Praxis News Issue 1."_File: [PRAXISDOC.NEWS]issue1.txt/_Author: J. M. Duffy _Created: 16-DEC-1980H------------------------------------------------------------------------ General NotesH------------------------------------------------------------------------BOn Monday, December 8, the latest versions of the praxis compilersEwere installed on the NOVA VAX. All users are encouraged to give theCnew compiler a thorough workout. As new versions arrive, we will Binstall them immediately. To keep things in perspective, we will Buse the following convention to invoke the various versions of the compilers:: Newpraxis - The latest version of the Vax->Vax compiler.< Newpraxis11 - The latest version of the Vax->pdp compiler.9 praxis - The current version of the Vax->Vax compiler.s: praxis11 - The current version of the Vax->pdp compiler.< oldpraxis - The previous version of the Vax->Vax compiler.> oldpraxis11 - The previous version of the Vax->pdp compiler.AThe transition of versions from "new" to "current", "current" to eC"old" and "old" to oblivion will be heralded by NEWS on the systemseor through this letter. p'The current status of the compilers is:hcompiler: Old current New--------- --- ------- --- Vax->Vax 16-sep 03-dec 03-dec Vax->PDP 16-sep 03-dec 03-decF----------------------------------------------------------------------> As the compiler "workout" continues, it is hoped that we willDfind bugs. In order to aid in the preparation of this document and,Dultimately fix the problems, we would like to encourage users to use(the following procedure to report bugs. ?The symbols PRAXISBUG will invoke a command procedure that willt@prepare a bug report by inquireing the specific information thatEwill be useful in tracing the problem. Please answer the questions.=We hope that this will be a little better than word of mouth. F---------------------------------------------------------------------- Syntax Changes.&F----------------------------------------------------------------------*Syn - 1.1: Procedure Declarations Changed.? The formal parameter specification has been changed to reflectEwhat is descibed in the Reference manual. The old syntax will still Dbe recognized for awhile, but users are encouraged to switch over as@soon as possible. However, one semantic change is that now the Ccompiler checks to see that input parameters are not written withinCthe body of the procedure. This was not done in the past, allowingusers to cheat. Syn - 1.2: Volatile has moved.: Volatile is now a type attribute rather that an attribute2a variable (i.e. storage class) and the syntax has:been changed to reflect this. Therefore, statements like:& x : volatile location (8!100) integer$ y : volatile segment (blah) integer z : volatile static integermust be changed to:' x : location ( 8!100) volatile integer$ y : segment (blah) volatile integer z : static volatile integer7Syn - 1.3: Dollar Sign No Longer Valid in identifiers.A In the September Compiler, a local change was made to allow the D$ in identifiers. This was useful in interfacing to VAX/VMS system Gservices. That change was not carried over to the new versions. One Cmay still force the dollar sign into a name by prefacing it with a 7single quote. Therefore, sys$wake becomes sys'$wake. : We need input as to whether this is acceptable. It will .remain this way unless there is a huge outcry. F---------------------------------------------------------------------- Compiler Operation Changes:F---------------------------------------------------------------------->Cmp - 1.1: Secondary Directory No Longer Checked for Synopses.> Previously, the compiler would check [prxlib] for synopses ifDthey were not present in the default directory. This mostly affectsusers of the modules: $ DESCR - String descriptor routines. TEXTIO - I/O package.>For the time being, these synopses should be copied into your ?directory. We are investigating how the synopsis specification.?should be done in general and will change the compiler when the-'design is completed. Input is welcome.-9Cmp - 1.2: Linker needs Object files from Type Modules.-> Often one writes a module that contains only the declarationsEof types that are exported to other modules. In the past, all of theAEtype information from such modules was stored in the synopsis and the F.MAR file was null. Now, with the completion of the "Initially" clauseBfor structures, it has been found that the .MAR files produced for>these modules contains the "pure data" values that are used to>initiallize those structures. Therefore these modules must beEassembled and the objects maintained. These "structure initiallizingoEconstants" are referenced at link time. Note: This is only a problemafor initialized types.< This implementation choice may cause problems in the PDP-11?compiler due to the six character limitation on global symbols. 5Cmp - 1.3: Dummy Modules should contain only Stubs.o9 Referencing CMP-1.2 above, because type declarations nowh?put information into the object files, one must be careful whenhAsubstituting a Fortran or Macro produced object file for a praxis-Fdummy module. One should be sure that the praxis module ONLY containsDthe dummy procedure declarations. Relevant types must be defined inanother module.A F---------------------------------------------------------------------- BUGSF----------------------------------------------------------------------,Bug - 1.1: Comparisons of packed structures.> Certain operations on packed structures cause error 98. BBN 3knows what causes the problem and is working on it. /Bug - 1.2: Pdp-11 code brackets not recognized.i: The opcodes for the PDP-11 code brackets have disapeared.;Use the old compiler on those modules until further notice. "The vax code brackets work though. -F----------------------------------------------------------------------! Fixes to Bugs reported earlier.-F---------------------------------------------------------------------- None yet folks. F---------------------------------------------------------------------- Miscellaneous Notes.F----------------------------------------------------------------------B Again, please use the Praxisbug procedure to report the bugs you Jfind. Other comments and input can be mailed to PRAXIS on the vax systemsor sent to the editor: Jim Duffy L-273 2-8400nThanks.l