view dmd/backend/Cstate.d @ 184:9f4e5ac4f0a3

One step closer to building on posix. There are two missing symbols so it actually doesn't build but previously it didn't build correctly anyway.
author Jacob Carlborg <doob@me.com>
date Tue, 02 Nov 2010 08:46:11 +0100
parents af724d3510d7
children
line wrap: on
line source

module dmd.backend.Cstate;

import dmd.common;
import dmd.backend.Symbol;
import dmd.backend.LIST;
import dmd.backend.symtab_t;

struct BLKLST;
 
struct Cstate
{
    BLKLST* CSfilblk;	// current source file we are parsing
    Symbol* CSlinkage;		// table of forward referenced linkage pragmas
    list_t CSlist_freelist;	// free list for list package
    symtab_t* CSpsymtab;	// pointer to current Symbol table
version (MEMORYHX) {
    void** CSphx;		// pointer to HX data block
}
    char* modname;		// module unique identifier
}

version (Windows) {
	extern (C++) extern __gshared Cstate cstate;		// compiler state
	extern (C++) extern __gshared symtab_t globsym;		/* global symbol table			*/
	extern (C++) extern void symtab_free(Symbol** tab);
} else {
	extern (C) extern __gshared Cstate cstate;
}