mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-03-03 02:53:13 +01:00
[svn r56] Initial support for TypeInfo.
Enums not work. Several other bugfixes.
This commit is contained in:
19
dmd/mars.c
19
dmd/mars.c
@@ -38,8 +38,8 @@ long __cdecl __ehfilter(LPEXCEPTION_POINTERS ep);
|
||||
#include "id.h"
|
||||
#include "cond.h"
|
||||
#include "expression.h"
|
||||
#include "lexer.h"
|
||||
|
||||
#include "lexer.h"
|
||||
|
||||
#include "gen/logger.h"
|
||||
|
||||
void getenv_setargv(const char *envvar, int *pargc, char** *pargv);
|
||||
@@ -177,6 +177,7 @@ Usage:\n\
|
||||
-debug=ident compile in debug code identified by ident\n\
|
||||
-debuglib=name set symbolic debug library to name\n\
|
||||
-defaultlib=name set default library to name\n\
|
||||
-dis disassemble module after compiling\n\
|
||||
-g add symbolic debug info\n\
|
||||
-gc add symbolic debug info, pretend to be C\n\
|
||||
-H generate 'header' file\n\
|
||||
@@ -204,7 +205,7 @@ Usage:\n\
|
||||
-release compile release version\n\
|
||||
-run srcfile args... run resulting program, passing args\n\
|
||||
-unittest compile in unit tests\n\
|
||||
-v verbose\n\
|
||||
-v verbose\n\
|
||||
-vv very verbose (does not include -v)\n\
|
||||
-v1 D language version 1\n\
|
||||
-version=level compile in version code >= level\n\
|
||||
@@ -229,7 +230,7 @@ int main(int argc, char *argv[])
|
||||
int argcstart = argc;
|
||||
char* tt_arch = 0;
|
||||
char* tt_os = 0;
|
||||
char* data_layout = 0;
|
||||
char* data_layout = 0;
|
||||
bool very_verbose = false;
|
||||
|
||||
// Check for malformed input
|
||||
@@ -355,10 +356,10 @@ int main(int argc, char *argv[])
|
||||
else if (strcmp(p + 1, "profile") == 0)
|
||||
global.params.trace = 1;
|
||||
else if (strcmp(p + 1, "v") == 0)
|
||||
global.params.verbose = 1;
|
||||
global.params.verbose = 1;
|
||||
else if (strcmp(p + 1, "vv") == 0) {
|
||||
Logger::enable();
|
||||
very_verbose = true;
|
||||
Logger::enable();
|
||||
very_verbose = true;
|
||||
}
|
||||
else if (strcmp(p + 1, "v1") == 0)
|
||||
global.params.Dversion = 1;
|
||||
@@ -384,6 +385,8 @@ int main(int argc, char *argv[])
|
||||
global.params.noruntime = 1;
|
||||
else if (strcmp(p + 1, "noverify") == 0)
|
||||
global.params.novalidate = 1;
|
||||
else if (strcmp(p + 1, "dis") == 0)
|
||||
global.params.disassemble = 1;
|
||||
else if (p[1] == 'o')
|
||||
{
|
||||
switch (p[2])
|
||||
@@ -661,7 +664,7 @@ int main(int argc, char *argv[])
|
||||
fatal();
|
||||
}
|
||||
else {
|
||||
global.params.llvmArch = const_cast<char*>(e->Name);
|
||||
global.params.llvmArch = const_cast<char*>(e->Name);
|
||||
if (global.params.verbose || very_verbose)
|
||||
printf("Default target found: %s\n", global.params.llvmArch);
|
||||
}
|
||||
|
||||
@@ -128,6 +128,7 @@ struct Param
|
||||
char *tt_arch;
|
||||
char *tt_os;
|
||||
char *data_layout;
|
||||
char disassemble;
|
||||
};
|
||||
|
||||
struct Global
|
||||
|
||||
@@ -157,6 +157,7 @@ Module::Module(char *filename, Identifier *ident, int doDocComment, int doHdrGen
|
||||
|
||||
objfile = new File(objfilename);
|
||||
bcfile = new File(bcfilename);
|
||||
llfile = new File(llfilename);
|
||||
symfile = new File(symfilename);
|
||||
}
|
||||
|
||||
|
||||
@@ -61,6 +61,7 @@ struct Module : Package
|
||||
File *srcfile; // input source file
|
||||
File *objfile; // output .obj file
|
||||
File *bcfile; // output .bc file
|
||||
File *llfile; // output .ll file
|
||||
File *hdrfile; // 'header' file
|
||||
File *symfile; // output symbol file
|
||||
File *docfile; // output documentation file
|
||||
|
||||
Reference in New Issue
Block a user