64-bit fixes

This commit is contained in:
rsc 2006-04-20 20:49:00 +00:00
parent f8e39513f3
commit 2c0f3733ad
7 changed files with 152 additions and 80 deletions

View file

@ -70,26 +70,23 @@ struct String
struct List /* code depends on a long being able to hold a pointer */
{
int type; /* 'p' for pointer, 'P' for Posn */
int nalloc;
int nused;
union{
void *listp;
Block *blkp;
long *longp;
uchar* *ucharp;
String* *stringp;
File* *filep;
long listv;
void* listp;
void** voidp;
Posn* posnp;
String**stringp;
File** filep;
}g;
};
#define listptr g.listp
#define blkptr g.blkp
#define longptr g.longp
#define ucharpptr g.ucharp
#define voidpptr g.voidp
#define posnptr g.posnp
#define stringpptr g.stringp
#define filepptr g.filep
#define listval g.listv
enum
{
@ -267,8 +264,9 @@ File *getfile(String*);
int getname(File*, String*, int);
long getnum(int);
void hiccough(char*);
void inslist(List*, int, long);
void inslist(List*, int, ...);
Address lineaddr(Posn, Address, int);
List *listalloc(int);
void listfree(List*);
void load(File*);
File *lookfile(String*);
@ -401,12 +399,6 @@ void outTsS(Hmesg, int, String*);
void outTsllS(Hmesg, int, long, long, String*);
void outTsll(Hmesg, int, long, long);
void outTsl(Hmesg, int, long);
void outTsv(Hmesg, int, long);
void outstart(Hmesg);
void outcopy(int, void*);
void outshort(int);
void outlong(long);
void outvlong(void*);
void outsend(void);
void outTsv(Hmesg, int, vlong);
void outflush(void);