aboutsummaryrefslogtreecommitdiff
path: root/backendC/CleanCompilerSources/backendsupport.h
blob: 084ff30b1f989b136b357da472f2609b9fd801a7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*
	Clean string
	============
*/
typedef struct clean_string {int length; char chars [1]; } *CleanString;

/*
	Debugging
	=========
*/

extern void AssertionFailed (char *conditionString, char *file, int line);
# define	Assert(condition)	{if (!(condition)) AssertionFailed ("!(" #condition ")", __FILE__, __LINE__);}

extern void fatal_backend_error (char *s);

/*
	Memory management
	=================
*/
# define FreeConvertBuffers()
# define ConvertAlloc(size) CompAlloc (size)
# define ConvertAllocType(t) ((t*) ConvertAlloc (SizeOf (t)))
# define ArraySize(array)	((unsigned) (sizeof (array) / sizeof (array[0])))