aboutsummaryrefslogtreecommitdiff
path: root/backendC/CleanCompilerSources/backendsupport.h
blob: a4ce7163aa111fed08e1e969be7ad91da5ca4b66 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/*
	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__);}

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