eĿlipsis
a language independent preprocessor
 
Loading...
Searching...
No Matches
ellipsis-error.h File Reference

Go to the source code of this file.

Macros

#define __STRINGIFY__(...)   #__VA_ARGS__
 
#define ELLIPSIS_BUG(FORMAT, ...)   ellipsis_error_internal("error, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)
 Indicate an error, considered to be an internal error of lip, on stderr and terminate execution.
 
#define ELLIPSIS_DIAGNOSTIC(FORMAT, ...)   ellipsis_diagnostic_internal("diagnostic, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)
 Issue a diagnostic on stderr.
 
#define ELLIPSIS_ERROR(FORMAT, ...)   ellipsis_error_internal("error, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)
 Indicate an error on stderr and terminate execution.
 
#define ELLIPSIS_ERROR_CHECK(F, MESSAGE, ...)
 
#define ELLIPSIS_WARNING(FORMAT, ...)   ellipsis_warning_internal("warning, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)
 Issue a warning on stderr.
 
#define GNU_ATTR_ACCESS(...)
 
#define GNU_ATTR_COUNTED_BY(...)
 
#define GNU_ATTR_FORMAT_PRINTF(...)
 
#define GNU_ATTR_MALLOC(...)
 
#define GNU_ATTR_RETURNS_NONNULL
 
#define GNU_ATTR_STRICT_FLEX_ARRAY(...)
 
#define GNU_ATTR_USED
 
#define STDC_ATTR_NODISCARD(...)
 

Functions

 GNU_ATTR_FORMAT_PRINTF (1, 2) void ellipsis_error_internal(char const format[]
 

Variables

bool ellipsis_dump
 
_Atomic bool ellipsis_finished
 
bool ellipsis_verb
 

Macro Definition Documentation

◆ __STRINGIFY__

#define __STRINGIFY__ (   ...)    #__VA_ARGS__

◆ ELLIPSIS_BUG

#define ELLIPSIS_BUG (   FORMAT,
  ... 
)    ellipsis_error_internal("error, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)

Indicate an error, considered to be an internal error of lip, on stderr and terminate execution.

◆ ELLIPSIS_DIAGNOSTIC

#define ELLIPSIS_DIAGNOSTIC (   FORMAT,
  ... 
)    ellipsis_diagnostic_internal("diagnostic, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)

Issue a diagnostic on stderr.

◆ ELLIPSIS_ERROR

#define ELLIPSIS_ERROR (   FORMAT,
  ... 
)    ellipsis_error_internal("error, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)

Indicate an error on stderr and terminate execution.

◆ ELLIPSIS_ERROR_CHECK

#define ELLIPSIS_ERROR_CHECK (   F,
  MESSAGE,
  ... 
)
Value:
({ \
auto _point = F(__VA_ARGS__); \
if (!_point) { \
ELLIPSIS_ERROR(__FILE__ ":" __STRINGIFY__(__LINE__) ": " MESSAGE); \
} \
_point; \
})
#define __FILE__
The current source file as required by the C standard.
Definition ellipsis-builtins.dirs:21
#define __LINE__
The current physical source line as required by the C standard.
Definition ellipsis-builtins.dirs:23
#define __STRINGIFY__(...)
Definition ellipsis-error.h:12

◆ ELLIPSIS_WARNING

#define ELLIPSIS_WARNING (   FORMAT,
  ... 
)    ellipsis_warning_internal("warning, " FORMAT "\n" __VA_OPT__(,) __VA_ARGS__)

Issue a warning on stderr.

◆ GNU_ATTR_ACCESS

#define GNU_ATTR_ACCESS (   ...)

◆ GNU_ATTR_COUNTED_BY

#define GNU_ATTR_COUNTED_BY (   ...)

◆ GNU_ATTR_FORMAT_PRINTF

#define GNU_ATTR_FORMAT_PRINTF (   ...)

◆ GNU_ATTR_MALLOC

#define GNU_ATTR_MALLOC (   ...)

◆ GNU_ATTR_RETURNS_NONNULL

#define GNU_ATTR_RETURNS_NONNULL

◆ GNU_ATTR_STRICT_FLEX_ARRAY

#define GNU_ATTR_STRICT_FLEX_ARRAY (   ...)

◆ GNU_ATTR_USED

#define GNU_ATTR_USED

◆ STDC_ATTR_NODISCARD

#define STDC_ATTR_NODISCARD (   ...)

Function Documentation

◆ GNU_ATTR_FORMAT_PRINTF()

GNU_ATTR_FORMAT_PRINTF ( ,
 
) const

Variable Documentation

◆ ellipsis_dump

bool ellipsis_dump
extern

Referenced by ellipsis‿output‿thread(), and main().

◆ ellipsis_finished

◆ ellipsis_verb