Next: About this document ...
Up: Changes
Previous: Version 1.7
Version 2.0-4
EMS Version 2.0-4 is released.
This version of EMS is implemented entirely in C. A Fortran interface
(also implemented in C) is provided. EMS Version 2.0 or higher is required
for use with MERS Version 1.7 or higher.
The following functional changes have occurred since EMS Version 1.7-1:
- 1.
- Now that base-level output of error messages from EMS occurs in C, some
undesirable conflicts may occur if output by this method occurs interspersed
with Fortran output. The base level, EMS__BASE is now available in the
ems_par.h header file and the EMS_PAR Fortran include file.
- 2.
- New subroutines EMS_TUNE (and emsTune) and
EMS_EXPND (and emsExpnd) are included.
EMS_EXPND (emsExpnd) is similar in function to
EMS_MLOAD (emsMload), which is now deprecated because it
has a redundant parameter, PARAM, and the C interface provides no
limit on the output string size.
- 3.
- The EMS_FMTx and emsFmtx routines are withdrawn on the
assumption that they have not been called directly and to avoid confusion
between Fortran and C format syntax.
- 4.
- emsFioer is withdrawn as it is Fortran-specific.
The Fortran-callable EMS_FIOER is still provided.
- 5.
- The calling sequence for the C functions is identical to the existing C
interface to Fortran EMS, with the following exceptions:
- The maxchar argument of emsSetc is now redundant and
optional. The given string cvalue must be null-terminated and will be
limited to EMS__SZTOK characters.
- A new function emsSetnc, has been introduced for use where it is
required to limit the number of characters other than by null-termination.
This has the additional maxchar argument and the old form of name,
ems_setc_c will be #defined in ems.h to use
emsSetnc. There is no Fortran interface for emsSetnc.
- 6.
- The temporary drop-through functions introduced in Version 1.6 to enable
compiled C code which uses the old form of EMS function name (ems_annul_c
etc.) to continue working have been withdrawn.
Any such code which has not been re-compiled using a Version 1.6 or later
ems.h header file must be re-compiled now.
- 7.
- The EMS library has been split into two - one containing the C interface
and the other containing the Fortran interface. This makes it possible to
link C programs with EMS without requiring the Starlink CNF library to be
present (use `ems_link Conly`).
Any programs linked with the shared libraries must be re-linked.
- 8.
- A bug which prevented tokens from being renewed in some cases has been
fixed.
SSN/4 has been revised to describe the new system.
Next: About this document ...
Up: Changes
Previous: Version 1.7
EMS Error Message Service
Starlink System Note 4
P C T Rees
A J Chipperfield
28 September 2001
E-mail:ussc@star.rl.ac.uk
Copyright © 2001 Council for the Central Laboratory of the Research
Councils