blob: 0872ac71ab4d18391746bf9d661fe12dce394436 [file] [log] [blame]
rsc749481f2006-01-06 18:15:40 +00001#include <inttypes.h>
rsc0dbd8722005-12-29 21:45:40 +00002
rscb2ff5382004-12-26 21:50:39 +00003/*
4 * compiler directive on Plan 9
5 */
6#ifndef USED
7#define USED(x) if(x);else
8#endif
9
10/*
11 * easiest way to make sure these are defined
12 */
13#define uchar _fmtuchar
14#define ushort _fmtushort
15#define uint _fmtuint
16#define ulong _fmtulong
17#define vlong _fmtvlong
18#define uvlong _fmtuvlong
rsc0dbd8722005-12-29 21:45:40 +000019#define uintptr _fmtuintptr
20
rscb2ff5382004-12-26 21:50:39 +000021typedef unsigned char uchar;
22typedef unsigned short ushort;
23typedef unsigned int uint;
24typedef unsigned long ulong;
25typedef unsigned long long uvlong;
26typedef long long vlong;
rsc0dbd8722005-12-29 21:45:40 +000027typedef uintptr_t uintptr;
rscb2ff5382004-12-26 21:50:39 +000028
29/*
30 * nil cannot be ((void*)0) on ANSI C,
31 * because it is used for function pointers
32 */
33#undef nil
34#define nil 0
35
36#undef nelem
37#define nelem(x) (sizeof (x)/sizeof (x)[0])
38