Nek5000
SEM for Incompressible NS
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
jl
fail.h
Go to the documentation of this file.
1
#ifndef FAIL_H
2
#define FAIL_H
3
4
#if !defined(NAME_H)
5
#warning "fail.h" requires "name.h"
6
#endif
7
8
#define die PREFIXED_NAME( die )
9
#define vdiagnostic PREFIXED_NAME(vdiagnostic)
10
#define diagnostic PREFIXED_NAME( diagnostic)
11
#define vfail PREFIXED_NAME(vfail )
12
#define fail PREFIXED_NAME( fail )
13
14
#ifdef __GNUC__
15
# define ATTRBD __attribute__ ((noreturn))
16
# define ATTRB4V __attribute__ ((format(printf,4,0)))
17
# define ATTRB4 __attribute__ ((format(printf,4,5)))
18
# define ATTRB4DV __attribute__ ((noreturn,format(printf,4,0)))
19
# define ATTRB4D __attribute__ ((noreturn,format(printf,4,5)))
20
#else
21
# define ATTRBD
22
# define ATTRB4V
23
# define ATTRB4
24
# define ATTRB4DV
25
# define ATTRB4D
26
#endif
27
28
#define DEF_FUNS() \
29
void die(int status) ATTRBD; \
30
void diagnostic(const char *prefix, const char *file, unsigned line, \
31
const char *fmt, ...) ATTRB4 ; \
32
void fail (int status, const char *file, unsigned line, \
33
const char *fmt, ...) ATTRB4D ;
34
#define VDEF_FUNS() \
35
void vdiagnostic(const char *prefix, const char *file, unsigned line, \
36
const char *fmt, va_list ap) ATTRB4V ; \
37
void vfail (int status, const char *file, unsigned line, \
38
const char *fmt, va_list ap) ATTRB4DV ;
39
DEF_FUNS
()
40
#ifdef va_arg
41
VDEF_FUNS
()
42
#endif
43
44
#undef VDEF_FUNS
45
#undef DEF_FUNS
46
#undef ATTRB4D
47
#undef ATTRB4DV
48
#undef ATTRB4
49
#undef ATTRB4V
50
#undef ATTRBD
51
52
#endif
VDEF_FUNS
#define VDEF_FUNS()
Definition:
fail.h:34
DEF_FUNS
#define DEF_FUNS()
Definition:
fail.h:28
Generated on Tue Jul 14 2015 10:52:58 for Nek5000 by
1.8.8