diff --git a/include/lang/FIFOT.h b/include/lang/FIFOT.h index 84a85589220..ef31915d37b 100644 --- a/include/lang/FIFOT.h +++ b/include/lang/FIFOT.h @@ -26,6 +26,8 @@ A Fifo for sending/receiving some type of object. #ifndef _FIFOT_ #define _FIFOT_ +#include "SCBase.h" + template class FIFOT { public: diff --git a/include/lang/PyrArchiverT.h b/include/lang/PyrArchiverT.h index 5ddf50c65d4..dc926c66f25 100644 --- a/include/lang/PyrArchiverT.h +++ b/include/lang/PyrArchiverT.h @@ -32,9 +32,11 @@ An object archiving system for SuperCollider. #include "PyrKernel.h" #include "PyrPrimitive.h" +#include "PyrSymbol.h" #include "VMGlobals.h" #include "GC.h" #include "ReadWriteMacros.h" +#include "SCBase.h" const int32 kArchHdrSize = 12; const int32 kObjectArrayInitialCapacity = 32; diff --git a/include/lang/PyrLexer.h b/include/lang/PyrLexer.h index be74921ed28..b3b1a397a2f 100644 --- a/include/lang/PyrLexer.h +++ b/include/lang/PyrLexer.h @@ -24,6 +24,7 @@ #include "PyrSymbol.h" #include "SC_Export.h" +#include "SCBase.h" extern int charno, lineno, linepos; extern int *linestarts; diff --git a/include/lang/PyrSlot32.h b/include/lang/PyrSlot32.h index 87f806ef2ee..069ca8414c0 100644 --- a/include/lang/PyrSlot32.h +++ b/include/lang/PyrSlot32.h @@ -29,10 +29,12 @@ A PyrSlot is an 8-byte value which is either a double precision float or a #define _PYRSLOT32_H_ #include "SC_Endian.h" -#include "PyrSymbol.h" +#include "PyrErrors.h" #include +struct PyrSymbol; + /* Pyrite slots are the size of an 8 byte double. If the upper bits indicate that the double is a 'Not-A-Number' then the upper 32 diff --git a/include/lang/PyrSlot64.h b/include/lang/PyrSlot64.h index 524cdd7aafb..b6a1a23e522 100644 --- a/include/lang/PyrSlot64.h +++ b/include/lang/PyrSlot64.h @@ -23,10 +23,14 @@ #define _PYRSLOTGENERIC_H_ #include "SC_Endian.h" -#include "PyrSymbol.h" +#include "SC_Types.h" +#include "PyrErrors.h" +#include #include +struct PyrSymbol; + enum { tagNotInitialized, // uninitialized slots have a tag of 0 tagObj, diff --git a/include/lang/PyrSymbol.h b/include/lang/PyrSymbol.h index c74a2260357..8749317e67f 100644 --- a/include/lang/PyrSymbol.h +++ b/include/lang/PyrSymbol.h @@ -26,7 +26,7 @@ A PyrSymbol is a unique string that resides in a global hash table. #ifndef _PYRSYMBOL_H_ #define _PYRSYMBOL_H_ -#include "SCBase.h" +#include "SC_Types.h" struct PyrSymbol { char *name; diff --git a/include/lang/PyrSymbolTable.h b/include/lang/PyrSymbolTable.h index af89ae7ab44..228aaada765 100644 --- a/include/lang/PyrSymbolTable.h +++ b/include/lang/PyrSymbolTable.h @@ -23,10 +23,14 @@ #include "PyrSymbol.h" #include "AdvancingAllocPool.h" +#include "SC_Export.h" #define STRINGCHUNK 32000 #define SYMBOLCHUNK 32000 +SC_DLLEXPORT_C PyrSymbol* getsym(const char *name); +SC_DLLEXPORT_C PyrSymbol* findsym(const char *name); + class SymbolSpace { public: diff --git a/lang/LangPrimSource/OSCData.cpp b/lang/LangPrimSource/OSCData.cpp index 7351e37a330..7f418ed28a8 100644 --- a/lang/LangPrimSource/OSCData.cpp +++ b/lang/LangPrimSource/OSCData.cpp @@ -23,6 +23,7 @@ #include "PyrKernel.h" #include "PyrInterpreter.h" #include "PyrSched.h" +#include "PyrSymbol.h" #include "GC.h" //#include "PyrOMS.h" //#include "MidiQ.h" diff --git a/lang/LangPrimSource/PyrFilePrim.cpp b/lang/LangPrimSource/PyrFilePrim.cpp index 4feed9667aa..34ca34e76ea 100644 --- a/lang/LangPrimSource/PyrFilePrim.cpp +++ b/lang/LangPrimSource/PyrFilePrim.cpp @@ -27,9 +27,11 @@ Primitives for File i/o. #include "GC.h" #include "PyrKernel.h" #include "PyrPrimitive.h" +#include "PyrSymbol.h" #include "PyrFilePrim.h" #include "PyrFileUtils.h" #include "ReadWriteMacros.h" +#include "SCBase.h" #include #include #include diff --git a/lang/LangPrimSource/PyrListPrim.cpp b/lang/LangPrimSource/PyrListPrim.cpp index d26c361bf7b..0c2430f5579 100644 --- a/lang/LangPrimSource/PyrListPrim.cpp +++ b/lang/LangPrimSource/PyrListPrim.cpp @@ -22,6 +22,7 @@ #include "PyrKernelProto.h" #include "PyrPrimitive.h" #include "PyrPrimitiveProto.h" +#include "PyrSymbol.h" #include "PyrListPrim.h" #include "SC_InlineUnaryOp.h" #include "SC_InlineBinaryOp.h" @@ -29,6 +30,7 @@ #include "PyrMessage.h" #include "PyrSched.h" #include "SC_RGen.h" +#include "SCBase.h" #include #include diff --git a/lang/LangPrimSource/PyrMathPrim.cpp b/lang/LangPrimSource/PyrMathPrim.cpp index 7701b9c744c..1643fad35fd 100644 --- a/lang/LangPrimSource/PyrMathPrim.cpp +++ b/lang/LangPrimSource/PyrMathPrim.cpp @@ -32,6 +32,7 @@ #include #include #include "SC_Endian.h" +#include "SCBase.h" const int INT_MAX_BY_PyrSlot = INT_MAX / sizeof(PyrSlot); diff --git a/lang/LangPrimSource/PyrSched.cpp b/lang/LangPrimSource/PyrSched.cpp index 928b44e1f39..dc18bf71701 100644 --- a/lang/LangPrimSource/PyrSched.cpp +++ b/lang/LangPrimSource/PyrSched.cpp @@ -23,6 +23,7 @@ #include "PyrSched.h" #include "GC.h" #include "PyrPrimitive.h" +#include "PyrSymbol.h" #ifdef SC_DARWIN # include #endif @@ -36,7 +37,7 @@ #endif #include "SC_Win32Utils.h" - +#include "SCBase.h" static const double dInfinity = std::numeric_limits::infinity(); diff --git a/lang/LangPrimSource/PyrSerialPrim.cpp b/lang/LangPrimSource/PyrSerialPrim.cpp index 7f3fab11d12..43cb2ade806 100644 --- a/lang/LangPrimSource/PyrSerialPrim.cpp +++ b/lang/LangPrimSource/PyrSerialPrim.cpp @@ -41,6 +41,7 @@ #include "PyrKernel.h" #include "PyrPrimitive.h" #include "SC_LanguageClient.h" +#include "SCBase.h" #include "SC_FIFO.h" diff --git a/lang/LangPrimSource/PyrSignalPrim.cpp b/lang/LangPrimSource/PyrSignalPrim.cpp index 546993ac542..6edfeed7a2d 100644 --- a/lang/LangPrimSource/PyrSignalPrim.cpp +++ b/lang/LangPrimSource/PyrSignalPrim.cpp @@ -18,6 +18,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "PyrSymbol.h" #include "PyrKernel.h" #include "PyrObject.h" #include "PyrPrimitive.h" @@ -25,6 +26,7 @@ #include "PyrSignalPrim.h" #include "PyrMessage.h" #include "SC_Constants.h" +#include "SCBase.h" #include "clz.h" extern "C" { #include "fftlib.h" diff --git a/lang/LangPrimSource/PyrSymbolPrim.cpp b/lang/LangPrimSource/PyrSymbolPrim.cpp index 1cbdde09c04..98cf65d48b5 100644 --- a/lang/LangPrimSource/PyrSymbolPrim.cpp +++ b/lang/LangPrimSource/PyrSymbolPrim.cpp @@ -26,8 +26,10 @@ Primitives for Symbol. #include #include #include "PyrPrimitive.h" +#include "PyrSymbol.h" #include "VMGlobals.h" #include "PyrKernel.h" +#include "SCBase.h" /* int prSymbolString(struct VMGlobals *g, int numArgsPushed); diff --git a/lang/LangPrimSource/PyrUnixPrim.cpp b/lang/LangPrimSource/PyrUnixPrim.cpp index 40d8e4ddb83..71bf41e5109 100644 --- a/lang/LangPrimSource/PyrUnixPrim.cpp +++ b/lang/LangPrimSource/PyrUnixPrim.cpp @@ -37,6 +37,7 @@ Primitives for Unix. #include "SC_RGen.h" #include "SC_DirUtils.h" #include "sc_popen.h" +#include "SCBase.h" #ifdef SC_WIN32 #include "SC_Win32Utils.h" diff --git a/lang/LangSource/GC.cpp b/lang/LangSource/GC.cpp index 428a6e19916..a96f780a9ef 100644 --- a/lang/LangSource/GC.cpp +++ b/lang/LangSource/GC.cpp @@ -22,6 +22,7 @@ #include "GC.h" #include "PyrKernel.h" #include "PyrObjectProto.h" +#include "PyrSymbol.h" #include "InitAlloc.h" #include #include diff --git a/lang/LangSource/PyrMathOps.cpp b/lang/LangSource/PyrMathOps.cpp index 8fef7a4644f..d4cfa59c6fb 100644 --- a/lang/LangSource/PyrMathOps.cpp +++ b/lang/LangSource/PyrMathOps.cpp @@ -36,6 +36,7 @@ double log2(double x); #include "PyrParseNode.h" #include "PyrSignal.h" #include "PyrSched.h" +#include "PyrSymbol.h" #include "SC_InlineUnaryOp.h" #include "SC_InlineBinaryOp.h" #include "MiscInlineMath.h" diff --git a/lang/LangSource/PyrMessage.cpp b/lang/LangSource/PyrMessage.cpp index bc56cd30a80..bf6034b45ec 100644 --- a/lang/LangSource/PyrMessage.cpp +++ b/lang/LangSource/PyrMessage.cpp @@ -23,12 +23,14 @@ #include "PyrInterpreter.h" #include "PyrPrimitive.h" #include "PyrListPrim.h" +#include "PyrSymbol.h" #include "GC.h" #include "bullet.h" #include #include #include "PredefinedSymbols.h" #include "PyrObjectProto.h" +#include "SCBase.h" #define DEBUGMETHODS 0 #define METHODMETER 0 diff --git a/lang/LangSource/SC_LanguageClient.cpp b/lang/LangSource/SC_LanguageClient.cpp index 2840d4a597b..447eb693edb 100644 --- a/lang/LangSource/SC_LanguageClient.cpp +++ b/lang/LangSource/SC_LanguageClient.cpp @@ -45,6 +45,7 @@ #include "GC.h" #include "VMGlobals.h" #include "SC_DirUtils.h" +#include "SCBase.h" void closeAllGUIScreens(); void initGUI(); diff --git a/lang/LangSource/dumpByteCodes.cpp b/lang/LangSource/dumpByteCodes.cpp index 3cd05eeef48..b121e2fb0ca 100644 --- a/lang/LangSource/dumpByteCodes.cpp +++ b/lang/LangSource/dumpByteCodes.cpp @@ -20,6 +20,8 @@ #include "PyrKernel.h" #include "PyrParseNode.h" +#include "PyrSymbol.h" +#include "SCBase.h" void numBlockTemps(PyrBlock *block, long level, long *numArgNames, long *numVarNames); void numBlockTemps(PyrBlock *block, long level, long *numArgNames, long *numVarNames)