summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2001-06-20 19:46:25 +0000
committerMarc Laukien <marc@zeroc.com>2001-06-20 19:46:25 +0000
commitcdf524ad8e9d5552359d82121eaefc7bfc90293c (patch)
tree3487fb81b556f5f627107e2ae8d07296e696fa13 /cpp
parentminor (diff)
downloadice-cdf524ad8e9d5552359d82121eaefc7bfc90293c.tar.bz2
ice-cdf524ad8e9d5552359d82121eaefc7bfc90293c.tar.xz
ice-cdf524ad8e9d5552359d82121eaefc7bfc90293c.zip
win fixes
Diffstat (limited to 'cpp')
-rw-r--r--cpp/ice.dsw19
-rw-r--r--cpp/src/Slice/OutputUtil.h26
-rw-r--r--cpp/src/Slice/Parser.cpp5
-rw-r--r--cpp/src/Slice/Parser.h134
-rw-r--r--cpp/src/Slice/parser.dsp182
-rw-r--r--cpp/src/slice2cpp/Main.cpp6
-rw-r--r--cpp/src/slice2cpp/cpp.dsp118
7 files changed, 404 insertions, 86 deletions
diff --git a/cpp/ice.dsw b/cpp/ice.dsw
index af9c599c9cb..fd6d28e9758 100644
--- a/cpp/ice.dsw
+++ b/cpp/ice.dsw
@@ -3,7 +3,7 @@ Microsoft Developer Studio Workspace File, Format Version 6.00
###############################################################################
-Project: "compiler"=.\src\compiler\compiler.dsp - Package Owner=<4>
+Project: "cpp"=.\src\slice\cpp\cpp.dsp - Package Owner=<4>
Package=<5>
{{{
@@ -12,7 +12,7 @@ Package=<5>
Package=<4>
{{{
Begin Project Dependency
- Project_Dep_Name library
+ Project_Dep_Name parser
End Project Dependency
}}}
@@ -203,6 +203,21 @@ Package=<5>
Package=<4>
{{{
+ Begin Project Dependency
+ Project_Dep_Name cpp
+ End Project Dependency
+}}}
+
+###############################################################################
+
+Project: "parser"=.\src\slice\parser\parser.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
}}}
###############################################################################
diff --git a/cpp/src/Slice/OutputUtil.h b/cpp/src/Slice/OutputUtil.h
index 6d8bf1e79de..b1cb95a1a4a 100644
--- a/cpp/src/Slice/OutputUtil.h
+++ b/cpp/src/Slice/OutputUtil.h
@@ -17,21 +17,21 @@
namespace Slice
{
-class NextLine { };
-class StartBlock { };
-class EndBlock { };
-class Separator { };
+class ICE_API NextLine { };
+class ICE_API StartBlock { };
+class ICE_API EndBlock { };
+class ICE_API Separator { };
-extern NextLine nl;
-extern StartBlock sb;
-extern EndBlock eb;
-extern Separator sp;
+extern ICE_API NextLine nl;
+extern ICE_API StartBlock sb;
+extern ICE_API EndBlock eb;
+extern ICE_API Separator sp;
// ----------------------------------------------------------------------
// Indent
// ----------------------------------------------------------------------
-class Output : ::__Ice::noncopyable
+class ICE_API Output : ::__Ice::noncopyable
{
public:
@@ -73,10 +73,10 @@ Output& operator<<(Output& out, const T& val)
return out;
}
-Output& operator<<(Output&, const NextLine&);
-Output& operator<<(Output&, const StartBlock&);
-Output& operator<<(Output&, const EndBlock&);
-Output& operator<<(Output&, const Separator&);
+ICE_API Output& operator<<(Output&, const NextLine&);
+ICE_API Output& operator<<(Output&, const StartBlock&);
+ICE_API Output& operator<<(Output&, const EndBlock&);
+ICE_API Output& operator<<(Output&, const Separator&);
}
diff --git a/cpp/src/Slice/Parser.cpp b/cpp/src/Slice/Parser.cpp
index 540f396f474..8c3c4ccaa7a 100644
--- a/cpp/src/Slice/Parser.cpp
+++ b/cpp/src/Slice/Parser.cpp
@@ -916,8 +916,11 @@ Slice::Parser::includeFiles()
}
int
-Slice::Parser::parse(FILE* file)
+Slice::Parser::parse(FILE* file, bool debug)
{
+ extern int yydebug;
+ yydebug = debug ? 1 : 0;
+
assert(!Slice::parser);
Slice::parser = this;
diff --git a/cpp/src/Slice/Parser.h b/cpp/src/Slice/Parser.h
index c6a66a95f19..bae4790570b 100644
--- a/cpp/src/Slice/Parser.h
+++ b/cpp/src/Slice/Parser.h
@@ -54,42 +54,42 @@ class Parser;
namespace __Ice
{
-void incRef(::Slice::Token*);
-void decRef(::Slice::Token*);
-void incRef(::Slice::String*);
-void decRef(::Slice::String*);
-void incRef(::Slice::Parameters*);
-void decRef(::Slice::Parameters*);
-void incRef(::Slice::Throws*);
-void decRef(::Slice::Throws*);
-void incRef(::Slice::SyntaxTreeBase*);
-void decRef(::Slice::SyntaxTreeBase*);
-void incRef(::Slice::Type*);
-void decRef(::Slice::Type*);
-void incRef(::Slice::Builtin*);
-void decRef(::Slice::Builtin*);
-void incRef(::Slice::Contained*);
-void decRef(::Slice::Contained*);
-void incRef(::Slice::Container*);
-void decRef(::Slice::Container*);
-void incRef(::Slice::Module*);
-void decRef(::Slice::Module*);
-void incRef(::Slice::Constructed*);
-void decRef(::Slice::Constructed*);
-void incRef(::Slice::ClassDecl*);
-void decRef(::Slice::ClassDecl*);
-void incRef(::Slice::ClassDef*);
-void decRef(::Slice::ClassDef*);
-void incRef(::Slice::Proxy*);
-void decRef(::Slice::Proxy*);
-void incRef(::Slice::Operation*);
-void decRef(::Slice::Operation*);
-void incRef(::Slice::DataMember*);
-void decRef(::Slice::DataMember*);
-void incRef(::Slice::Vector*);
-void decRef(::Slice::Vector*);
-void incRef(::Slice::Parser*);
-void decRef(::Slice::Parser*);
+void ICE_API incRef(::Slice::Token*);
+void ICE_API decRef(::Slice::Token*);
+void ICE_API incRef(::Slice::String*);
+void ICE_API decRef(::Slice::String*);
+void ICE_API incRef(::Slice::Parameters*);
+void ICE_API decRef(::Slice::Parameters*);
+void ICE_API incRef(::Slice::Throws*);
+void ICE_API decRef(::Slice::Throws*);
+void ICE_API incRef(::Slice::SyntaxTreeBase*);
+void ICE_API decRef(::Slice::SyntaxTreeBase*);
+void ICE_API incRef(::Slice::Type*);
+void ICE_API decRef(::Slice::Type*);
+void ICE_API incRef(::Slice::Builtin*);
+void ICE_API decRef(::Slice::Builtin*);
+void ICE_API incRef(::Slice::Contained*);
+void ICE_API decRef(::Slice::Contained*);
+void ICE_API incRef(::Slice::Container*);
+void ICE_API decRef(::Slice::Container*);
+void ICE_API incRef(::Slice::Module*);
+void ICE_API decRef(::Slice::Module*);
+void ICE_API incRef(::Slice::Constructed*);
+void ICE_API decRef(::Slice::Constructed*);
+void ICE_API incRef(::Slice::ClassDecl*);
+void ICE_API decRef(::Slice::ClassDecl*);
+void ICE_API incRef(::Slice::ClassDef*);
+void ICE_API decRef(::Slice::ClassDef*);
+void ICE_API incRef(::Slice::Proxy*);
+void ICE_API decRef(::Slice::Proxy*);
+void ICE_API incRef(::Slice::Operation*);
+void ICE_API decRef(::Slice::Operation*);
+void ICE_API incRef(::Slice::DataMember*);
+void ICE_API decRef(::Slice::DataMember*);
+void ICE_API incRef(::Slice::Vector*);
+void ICE_API decRef(::Slice::Vector*);
+void ICE_API incRef(::Slice::Parser*);
+void ICE_API decRef(::Slice::Parser*);
}
@@ -128,7 +128,7 @@ typedef std::list<TypeName> TypeNameList;
// ParserVisitor
// ----------------------------------------------------------------------
-class ParserVisitor
+class ICE_API ParserVisitor
{
public:
@@ -149,7 +149,7 @@ public:
// Token
// ----------------------------------------------------------------------
-class Token : virtual public ::__Ice::SimpleShared
+class ICE_API Token : virtual public ::__Ice::SimpleShared
{
};
@@ -159,7 +159,7 @@ class Token : virtual public ::__Ice::SimpleShared
// String
// ----------------------------------------------------------------------
-class String : virtual public Token
+class ICE_API String : virtual public Token
{
public:
@@ -171,7 +171,7 @@ public:
// Parameters
// ----------------------------------------------------------------------
-class Parameters : virtual public Token
+class ICE_API Parameters : virtual public Token
{
public:
@@ -183,7 +183,7 @@ public:
// Throws
// ----------------------------------------------------------------------
-class Throws : virtual public Token
+class ICE_API Throws : virtual public Token
{
public:
@@ -195,7 +195,7 @@ public:
// SyntaxTreeBase
// ----------------------------------------------------------------------
-class SyntaxTreeBase : virtual public ::__Ice::SimpleShared
+class ICE_API SyntaxTreeBase : virtual public ::__Ice::SimpleShared
{
public:
@@ -214,7 +214,7 @@ protected:
// Type
// ----------------------------------------------------------------------
-class Type : virtual public SyntaxTreeBase, virtual public Token
+class ICE_API Type : virtual public SyntaxTreeBase, virtual public Token
{
public:
@@ -227,7 +227,7 @@ protected:
// Builtin
// ----------------------------------------------------------------------
-class Builtin : virtual public Type
+class ICE_API Builtin : virtual public Type
{
public:
@@ -251,7 +251,7 @@ public:
protected:
Builtin(const Parser_ptr&, Kind);
- friend class Parser;
+ friend class ICE_API Parser;
Kind kind_;
};
@@ -260,7 +260,7 @@ protected:
// Contained
// ----------------------------------------------------------------------
-class Contained : virtual public SyntaxTreeBase
+class ICE_API Contained : virtual public SyntaxTreeBase
{
public:
@@ -273,21 +273,21 @@ protected:
Contained(const Container_ptr&,
const std::string&);
- friend class Container;
+ friend class ICE_API Container;
Container_ptr container_;
std::string name_;
std::string scoped_;
};
-bool operator<(Contained&, Contained&);
-bool operator==(Contained&, Contained&);
+bool ICE_API operator<(Contained&, Contained&);
+bool ICE_API operator==(Contained&, Contained&);
// ----------------------------------------------------------------------
// Container
// ----------------------------------------------------------------------
-class Container : virtual public SyntaxTreeBase
+class ICE_API Container : virtual public SyntaxTreeBase
{
public:
@@ -317,7 +317,7 @@ protected:
// Module
// ----------------------------------------------------------------------
-class Module : virtual public Container, virtual public Contained
+class ICE_API Module : virtual public Container, virtual public Contained
{
public:
@@ -327,14 +327,14 @@ protected:
Module(const Container_ptr&,
const std::string&);
- friend class Container;
+ friend class ICE_API Container;
};
// ----------------------------------------------------------------------
// Constructed
// ----------------------------------------------------------------------
-class Constructed : virtual public Type, virtual public Contained
+class ICE_API Constructed : virtual public Type, virtual public Contained
{
public:
@@ -348,7 +348,7 @@ protected:
// ClassDecl
// ----------------------------------------------------------------------
-class ClassDecl : virtual public Constructed
+class ICE_API ClassDecl : virtual public Constructed
{
public:
@@ -361,8 +361,8 @@ protected:
ClassDecl(const Container_ptr&,
const std::string&,
bool);
- friend class Container;
- friend class ClassDef;
+ friend class ICE_API Container;
+ friend class ICE_API ClassDef;
bool local_;
ClassDef_ptr definition_;
@@ -372,7 +372,7 @@ protected:
// ClassDef
// ----------------------------------------------------------------------
-class ClassDef : virtual public Container, virtual public Contained,
+class ICE_API ClassDef : virtual public Container, virtual public Contained,
virtual public Token
{
public:
@@ -396,7 +396,7 @@ protected:
const std::string&,
const ClassDef_ptr&,
bool);
- friend class Container;
+ friend class ICE_API Container;
ClassDef_ptr base_;
bool local_;
@@ -406,7 +406,7 @@ protected:
// Proxy
// ----------------------------------------------------------------------
-class Proxy : virtual public Type
+class ICE_API Proxy : virtual public Type
{
public:
@@ -423,7 +423,7 @@ protected:
// Operation
// ----------------------------------------------------------------------
-class Operation : virtual public Contained
+class ICE_API Operation : virtual public Contained
{
public:
@@ -441,7 +441,7 @@ protected:
const TypeNameList&,
const TypeNameList&,
const TypeList&);
- friend class ClassDef;
+ friend class ICE_API ClassDef;
Type_ptr returnType_;
TypeNameList inParams_;
@@ -453,7 +453,7 @@ protected:
// DataMember
// ----------------------------------------------------------------------
-class DataMember : virtual public Contained
+class ICE_API DataMember : virtual public Contained
{
public:
@@ -465,7 +465,7 @@ protected:
DataMember(const Container_ptr&,
const std::string&,
const Type_ptr&);
- friend class ClassDef;
+ friend class ICE_API ClassDef;
Type_ptr type_;
};
@@ -474,7 +474,7 @@ protected:
// Vector
// ----------------------------------------------------------------------
-class Vector : virtual public Constructed
+class ICE_API Vector : virtual public Constructed
{
public:
@@ -486,7 +486,7 @@ protected:
Vector(const Container_ptr&,
const std::string&,
const Type_ptr&);
- friend class Container;
+ friend class ICE_API Container;
Type_ptr type_;
};
@@ -495,7 +495,7 @@ protected:
// Parser
// ----------------------------------------------------------------------
-class Parser : virtual public Container
+class ICE_API Parser : virtual public Container
{
public:
@@ -517,7 +517,7 @@ public:
std::vector<std::string> includeFiles();
- int parse(FILE*);
+ int parse(FILE*, bool);
virtual void destroy();
virtual void visit(ParserVisitor*);
diff --git a/cpp/src/Slice/parser.dsp b/cpp/src/Slice/parser.dsp
new file mode 100644
index 00000000000..70786a3765a
--- /dev/null
+++ b/cpp/src/Slice/parser.dsp
@@ -0,0 +1,182 @@
+# Microsoft Developer Studio Project File - Name="parser" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
+
+CFG=parser - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "parser.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "parser.mak" CFG="parser - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "parser - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "parser - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+MTL=midl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "parser - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "PARSER_EXPORTS" /Yu"stdafx.h" /FD /c
+# ADD CPP /nologo /MD /W3 /GR /GX /O2 /I "." /I "../../../include" /I "dummyinclude" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "ICE_EXPORTS" /YX /FD /c
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
+# ADD LINK32 jtc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"../../../lib/slice001.dll"
+
+!ELSEIF "$(CFG)" == "parser - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "PARSER_EXPORTS" /Yu"stdafx.h" /FD /GZ /c
+# ADD CPP /nologo /MDd /W3 /Gm /GR /GX /ZI /Od /I "." /I "../../../include" /I "dummyinclude" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "ICE_EXPORTS" /YX /FD /GZ /c
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 jtcd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /out:"../../../lib/slice001d.dll" /pdbtype:sept
+
+!ENDIF
+
+# Begin Target
+
+# Name "parser - Win32 Release"
+# Name "parser - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\Grammer.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\OutputUtil.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\Parser.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\Scanner.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\library\Shared.cpp
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=.\Grammer.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\OutputUtil.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\Parser.h
+# End Source File
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# Begin Source File
+
+SOURCE=.\Grammer.y
+
+!IF "$(CFG)" == "parser - Win32 Release"
+
+!ELSEIF "$(CFG)" == "parser - Win32 Debug"
+
+# Begin Custom Build
+InputPath=.\Grammer.y
+
+BuildCmds= \
+ bison -dvt Grammer.y \
+ move Grammer.tab.c Grammer.cpp \
+ move Grammer.tab.h Grammer.h \
+
+
+"Grammer.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ $(BuildCmds)
+
+"Grammer.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ $(BuildCmds)
+# End Custom Build
+
+!ENDIF
+
+# End Source File
+# Begin Source File
+
+SOURCE=.\Scanner.l
+
+!IF "$(CFG)" == "parser - Win32 Release"
+
+!ELSEIF "$(CFG)" == "parser - Win32 Debug"
+
+# Begin Custom Build
+InputPath=.\Scanner.l
+
+"Scanner.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+ flex Scanner.l
+ move lex.yy.c Scanner.cpp
+
+# End Custom Build
+
+!ENDIF
+
+# End Source File
+# End Target
+# End Project
diff --git a/cpp/src/slice2cpp/Main.cpp b/cpp/src/slice2cpp/Main.cpp
index 844250c4727..9220dc9b44c 100644
--- a/cpp/src/slice2cpp/Main.cpp
+++ b/cpp/src/slice2cpp/Main.cpp
@@ -38,6 +38,7 @@ main(int argc, char* argv[])
vector<string> includePaths;
string include;
string dllExport;
+ bool debug = false;
int idx = 1;
while(idx < argc)
@@ -74,8 +75,7 @@ main(int argc, char* argv[])
else if(strcmp(argv[idx], "-d") == 0 ||
strcmp(argv[idx], "--debug") == 0)
{
- extern int yydebug;
- yydebug = 1;
+ debug = true;
for(int i = idx ; i + 1 < argc ; ++i)
argv[i] = argv[i + 1];
--argc;
@@ -169,7 +169,7 @@ main(int argc, char* argv[])
}
Parser_ptr parser = Parser::createParser();
- int status = parser -> parse(cppHandle);
+ int status = parser -> parse(cppHandle, debug);
#ifdef WIN32
_pclose(cppHandle);
diff --git a/cpp/src/slice2cpp/cpp.dsp b/cpp/src/slice2cpp/cpp.dsp
new file mode 100644
index 00000000000..833cf800d4c
--- /dev/null
+++ b/cpp/src/slice2cpp/cpp.dsp
@@ -0,0 +1,118 @@
+# Microsoft Developer Studio Project File - Name="cpp" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=cpp - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "cpp.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "cpp.mak" CFG="cpp - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "cpp - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "cpp - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "cpp - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GR /GX /O2 /I "." /I "../../../include" /I "../parser" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 jtc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib setargv.obj /nologo /subsystem:console /machine:I386 /out:"../../../bin/slice2cpp.exe" /libpath:"../../../lib"
+
+!ELSEIF "$(CFG)" == "cpp - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
+# ADD CPP /nologo /MDd /W3 /Gm /GR /GX /ZI /Od /I "." /I "../../../include" /I "../parser" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 jtcd.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib setargv.obj /nologo /subsystem:console /debug /machine:I386 /out:"../../../bin/slice2cpp.exe" /pdbtype:sept /libpath:"../../../lib"
+
+!ENDIF
+
+# Begin Target
+
+# Name "cpp - Win32 Release"
+# Name "cpp - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\Gen.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\GenUtil.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=.\Main.cpp
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=.\Gen.h
+# End Source File
+# Begin Source File
+
+SOURCE=.\GenUtil.h
+# End Source File
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project