Ferror, Ferror32
-BEA TUXEDO system FML error codes
#include "fml.h"
#include "fml32.h"
The numerical value represented by the symbolic name of an error condition is assigned to Ferror
for errors that occur when executing many FML library routines.
The name Ferror
expands to a modifiable lvalue
that has type int
, the value of which is set to a positive error number by several FML library routines. Ferror
need not be the identifier of an object; it might expand to a modifiable lvalue
resulting from a function call. It is unspecified whether Ferror
is a macro or an identifier declared with external linkage. If a tperrno
macro definition is suppressed to access an actual object, or if a program defines an identifier with the name Ferror
, the behavior is undefined.
The reference pages for FML routines list possible error conditions for each routine and the meaning of the error in that context. The order in which possible errors are listed is not significant and does not imply precedence. The value of Ferror
should be checked only after an error has been indicated; that is, when the return value of the component indicates an error and the component definition specifies that tperrno
be set. An application that checks the value of Ferror
must include the fml.h
header file.
Ferror32
provides a similar capability for users of fml32 routines. An application that checks the value of Ferror32
must include the fml32.h
header file.
The following list shows error codes that may be returned by FML and FML32 routines.
#define FMINVAL 0 /* bottom of error message codes */
#define FALIGNERR 1 /* fielded buffer not aligned */
#define FNOTFLD 2 /* buffer not fielded */
#define FNOSPACE 3 /* no space in fielded buffer */
#define FNOTPRES 4 /* field not present */
#define FBADFLD 5 /* unknown field number or type */
#define FTYPERR 6 /* illegal field type */
#define FEUNIX 7 /* unix system call error */
#define FBADNAME 8 /* unknown field name */
#define FMALLOC 9 /* malloc failed */
#define FSYNTAX 10 /* bad syntax in boolean expression */
#define FFTOPEN 11 /* cannot find or open field table */
#define FFTSYNTAX 12 /* syntax error in field table */
#define FEINVAL 13 /* invalid argument to function */
#define FBADTBL 14 /* destructive concurrent access to field table */
#define FBADVIEW 15 /* cannot find or get view */
#define FVFSYNTAX 16 /* bad viewfile */
#define FVFOPEN 17 /* cannot find or open viewfile */
#define FBADACM 18 /* ACM contains negative value */
#define FNOCNAME 19 /* cname not found */
Some routines do not have an error return value. Because no routine sets Ferror
to zero, an application can set Ferror
to zero, call a routine and then check Ferror
again to see if an error has occurred.
In DOS and OS/2 environments, this variable is known as FMLerror
.
See the ERRORS
section of the individual FML library routines for a more detailed description of the meaning of the error codes returned by each routine.
Fintro
(3fml), intro
(3c), tpstrerror
(3c), tperrordetail
(3c), tpstrerrordetail
(3c), F_error
(3fml)