view dmd/backend/Cstate.d @ 165:25ede4f66bda

Temporarily disabled GC (again) because phobos fails to compile with it (looks like some ObjSymbols are being falsely collected, see Library.d:666) Getting rid of global state (i.e global and static variables) to allow running concurrent compilation
author korDen
date Thu, 30 Sep 2010 10:04:32 +0400
parents e28b18c23469
children af724d3510d7
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;
} else {
	extern (C) extern __gshared Cstate cstate;
}