My Project  debian-1:4.1.1-p2+ds-4build3
Macros | Typedefs | Enumerations | Functions | Variables
omError.h File Reference
#include <stdio.h>

Go to the source code of this file.

Macros

#define omAssume(x)
 

Typedefs

typedef enum omError_e omError_t
 

Enumerations

enum  omError_e {
  omError_NoError = 0, omError_Unknown, omError_InternalBug, omError_MemoryCorrupted,
  omError_NullAddr, omError_InvalidRangeAddr, omError_FalseAddr, omError_FalseAddrOrMemoryCorrupted,
  omError_WrongSize, omError_FreedAddr, omError_FreedAddrOrMemoryCorrupted, omError_WrongBin,
  omError_UnknownBin, omError_NotBinAddr, omError_UnalignedAddr, omError_NullSizeAlloc,
  omError_ListCycleError, omError_SortedListError, omError_KeptAddrListCorrupted, omError_FreePattern,
  omError_BackPattern, omError_FrontPattern, omError_NotString, omError_StickyBin,
  omError_MaxError
}
 

Functions

const char * omError2String (omError_t error)
 
const char * omError2Serror (omError_t error)
 
omError_t omReportError (omError_t error, omError_t report_error, OM_FLR_DECL, const char *fmt,...)
 
void omErrorBreak ()
 
void omPrintAddrInfo (FILE *fd, void *addr, const char *s)
 

Variables

omError_t om_ErrorStatus
 
omError_t om_InternalErrorStatus
 
int om_CallErrorHook
 

Macro Definition Documentation

◆ omAssume

#define omAssume (   x)
Value:
do \
{ \
if (! (x)) \
{ \
omReportError(omError_InternalBug, omError_InternalBug, OM_FLR, "omAssume violation"); \
} \
} \
while (0)

Definition at line 86 of file omError.h.

Typedef Documentation

◆ omError_t

typedef enum omError_e omError_t

Definition at line 1 of file omError.h.

Enumeration Type Documentation

◆ omError_e

enum omError_e
Enumerator
omError_NoError 
omError_Unknown 
omError_InternalBug 
omError_MemoryCorrupted 
omError_NullAddr 
omError_InvalidRangeAddr 
omError_FalseAddr 
omError_FalseAddrOrMemoryCorrupted 
omError_WrongSize 
omError_FreedAddr 
omError_FreedAddrOrMemoryCorrupted 
omError_WrongBin 
omError_UnknownBin 
omError_NotBinAddr 
omError_UnalignedAddr 
omError_NullSizeAlloc 
omError_ListCycleError 
omError_SortedListError 
omError_KeptAddrListCorrupted 
omError_FreePattern 
omError_BackPattern 
omError_FrontPattern 
omError_NotString 
omError_StickyBin 
omError_MaxError 

Definition at line 16 of file omError.h.

Function Documentation

◆ omError2Serror()

const char* omError2Serror ( omError_t  error)

Definition at line 63 of file omError.c.

64 {
65  int i = 0;
66  while (! (om_ErrorStrings[i].string == NULL && om_ErrorStrings[i].error == omError_MaxError))
67  {
69  i++;
70  }
71  return "omError_UnKnown";
72 }

◆ omError2String()

const char* omError2String ( omError_t  error)

Definition at line 52 of file omError.c.

53 {
54  int i = 0;
55  while (! (om_ErrorStrings[i].string == NULL && om_ErrorStrings[i].error == omError_MaxError))
56  {
58  i++;
59  }
60  return "undocumented error";
61 }

◆ omErrorBreak()

void omErrorBreak ( )

Definition at line 135 of file omError.c.

136 {}

◆ omPrintAddrInfo()

void omPrintAddrInfo ( FILE *  fd,
void *  addr,
const char *  s 
)

Definition at line 453 of file omDebugCheck.c.

454 {
455  _omPrintAddrInfo(fd, omError_NoError, addr, NULL, 0, 10, s);
456 }

◆ omReportError()

omError_t omReportError ( omError_t  error,
omError_t  report_error,
OM_FLR_DECL  ,
const char *  fmt,
  ... 
)

Definition at line 78 of file omError.c.

80 {
81  int max_check, max_track;
82 
83  if (report_error == omError_MaxError) return error;
84  /* reset MaxTrack and MaxCheck to prevent infinite loop, in case
85  printf allocates memory */
86  max_check = om_Opts.MaxCheck;
87  max_track = om_Opts.MaxTrack;
88  om_Opts.MaxCheck = 0;
89  om_Opts.MaxTrack = 0;
90 
92  om_ErrorStatus = (report_error == omError_NoError ? error : report_error);
93 
94  if (om_Opts.HowToReportErrors && om_ErrorStatus != omError_NoError)
95  {
96  /* to avoid spurious error msg in 64 bit mode*/
97  if (om_ErrorStatus == omError_StickyBin) return error;
98  fprintf(stderr, "***%s: %s", omError2Serror(om_ErrorStatus), omError2String(om_ErrorStatus));
99 
100 #ifdef OM_INTERNAL_DEBUG
101  if (om_ErrorStatus != error)
102  fprintf(stderr, "\n___%s: %s", omError2Serror(error), omError2String(error));
103 #endif
104 
105  if (om_Opts.HowToReportErrors > 2 && fmt != NULL && *fmt != '\0')
106  {
107  va_list ap;
108  va_start(ap, fmt);
109  fputs( ": ",stderr);
110  vfprintf(stderr, fmt, ap);
111  va_end(ap);
112  }
113 
114  if (om_Opts.HowToReportErrors > 1)
115  {
116 #ifndef OM_NDEBUG
117  fputs("\n occurred at: ",stderr);
118  if (! _omPrintCurrentBackTrace(stderr, OM_FLR_VAL))
119  fputs(" ??",stderr);
120 #endif
121  }
122  fputc('\n',stderr);
123  fflush(stderr);
124  }
125  if (om_CallErrorHook)
126  om_Opts.ErrorHook();
127 
128  om_Opts.MaxCheck = max_check;
129  om_Opts.MaxTrack = max_track;
130  return error;
131 }

Variable Documentation

◆ om_CallErrorHook

int om_CallErrorHook

Definition at line 75 of file omError.c.

◆ om_ErrorStatus

omError_t om_ErrorStatus

Definition at line 11 of file omError.c.

◆ om_InternalErrorStatus

omError_t om_InternalErrorStatus

Definition at line 12 of file omError.c.

omError_FrontPattern
@ omError_FrontPattern
Definition: omError.h:48
error
void error(const char *fmt,...)
Definition: emacs.cc:55
omErrorString_s::s_error
char * s_error
Definition: omError.c:17
omError_SortedListError
@ omError_SortedListError
Definition: omError.h:44
omError_BackPattern
@ omError_BackPattern
Definition: omError.h:47
x
Variable x
Definition: cfModGcd.cc:4023
omError_FreePattern
@ omError_FreePattern
Definition: omError.h:46
omError2String
const char * omError2String(omError_t error)
Definition: omError.c:52
_omPrintCurrentBackTrace
int _omPrintCurrentBackTrace(FILE *fd, OM_FLR_DECL)
Definition: omRet2Info.c:270
omError_InvalidRangeAddr
@ omError_InvalidRangeAddr
Definition: omError.h:32
ap
Definition: ap.h:40
omError_UnalignedAddr
@ omError_UnalignedAddr
Definition: omError.h:41
om_ErrorStrings
static const struct omErrorString_s om_ErrorStrings[]
Definition: omError.c:22
om_InternalErrorStatus
omError_t om_InternalErrorStatus
Definition: omError.c:12
omError2Serror
const char * omError2Serror(omError_t error)
Definition: omError.c:63
i
int i
Definition: cfEzgcd.cc:125
om_ErrorStatus
omError_t om_ErrorStatus
Definition: omError.c:11
omError_NullAddr
@ omError_NullAddr
Definition: omError.h:31
omError_WrongBin
@ omError_WrongBin
Definition: omError.h:38
omError_FalseAddrOrMemoryCorrupted
@ omError_FalseAddrOrMemoryCorrupted
Definition: omError.h:34
omError_NoError
@ omError_NoError
Definition: omError.h:27
omError_FreedAddr
@ omError_FreedAddr
Definition: omError.h:36
omError_WrongSize
@ omError_WrongSize
Definition: omError.h:35
omError_Unknown
@ omError_Unknown
Definition: omError.h:28
omErrorString_s::string
char * string
Definition: omError.c:18
omError_NotString
@ omError_NotString
Definition: omError.h:49
omError_KeptAddrListCorrupted
@ omError_KeptAddrListCorrupted
Definition: omError.h:45
om_CallErrorHook
int om_CallErrorHook
Definition: omError.c:75
omError_FreedAddrOrMemoryCorrupted
@ omError_FreedAddrOrMemoryCorrupted
Definition: omError.h:37
omError_UnknownBin
@ omError_UnknownBin
Definition: omError.h:39
om_Opts
omOpts_t om_Opts
Definition: omOpts.c:11
omError_ListCycleError
@ omError_ListCycleError
Definition: omError.h:43
NULL
#define NULL
Definition: omList.c:10
omError_NotBinAddr
@ omError_NotBinAddr
Definition: omError.h:40
_omPrintAddrInfo
static void _omPrintAddrInfo(FILE *fd, omError_t error, void *addr, void *bin_size, omTrackFlags_t flags, int max_frames, const char *s)
Definition: omDebugCheck.c:421
omError_MaxError
@ omError_MaxError
Definition: omError.h:51
omError_FalseAddr
@ omError_FalseAddr
Definition: omError.h:33
omError_StickyBin
@ omError_StickyBin
Definition: omError.h:50
omError_NullSizeAlloc
@ omError_NullSizeAlloc
Definition: omError.h:42
omError_InternalBug
@ omError_InternalBug
Definition: omError.h:29
s
const CanonicalForm int s
Definition: facAbsFact.cc:55
fd
int status int fd
Definition: si_signals.h:59
omError_MemoryCorrupted
@ omError_MemoryCorrupted
Definition: omError.h:30