comparison dmd/mars.h @ 534:7e2867ed70d9

Get rid of isLinux and isWindows in favor of global.params.os.
author Christian Kamm <kamm incasoftware de>
date Sun, 24 Aug 2008 16:22:58 +0200
parents cc40db549aea
children b0005772a88e
comparison
equal deleted inserted replaced
532:0beebf923322 534:7e2867ed70d9
35 #define DMDV2 0 // Version 2.0 features 35 #define DMDV2 0 // Version 2.0 features
36 #define BREAKABI 1 // 0 if not ready to break the ABI just yet 36 #define BREAKABI 1 // 0 if not ready to break the ABI just yet
37 37
38 struct Array; 38 struct Array;
39 39
40 // LLVMDC
41 enum ARCH
42 {
43 ARCHx86,
44 ARCHx86_64,
45 ARCHppc,
46 ARCHppc_64
47 };
48
49 enum OS
50 {
51 OSLinux,
52 OSWindows,
53 OSMacOSX
54 };
55
40 // Put command line switches in here 56 // Put command line switches in here
41 struct Param 57 struct Param
42 { 58 {
43 char obj; // write object file 59 char obj; // write object file
44 char link; // perform link 60 char link; // perform link
46 char quiet; // suppress non-error messages 62 char quiet; // suppress non-error messages
47 char verbose; // verbose compile 63 char verbose; // verbose compile
48 char symdebug; // insert debug symbolic information 64 char symdebug; // insert debug symbolic information
49 char optimize; // run optimizer 65 char optimize; // run optimizer
50 char optimizeLevel; // optimization level 66 char optimizeLevel; // optimization level
51 char cpu; // target CPU 67 ARCH cpu; // target CPU
68 OS os; // target OS
52 char is64bit; // generate 64 bit code 69 char is64bit; // generate 64 bit code
53 char isLE; // generate little endian code 70 char isLE; // generate little endian code
54 char isLinux; // generate code for linux
55 char isWindows; // generate code for Windows
56 char scheduler; // which scheduler to use 71 char scheduler; // which scheduler to use
57 char useDeprecated; // allow use of deprecated features 72 char useDeprecated; // allow use of deprecated features
58 char useAssert; // generate runtime code for assert()'s 73 char useAssert; // generate runtime code for assert()'s
59 char useInvariants; // generate class invariant checks 74 char useInvariants; // generate class invariant checks
60 char useIn; // generate precondition checks 75 char useIn; // generate precondition checks
303 MATCHconst, // match with conversion to const 318 MATCHconst, // match with conversion to const
304 #endif 319 #endif
305 MATCHexact // exact match 320 MATCHexact // exact match
306 }; 321 };
307 322
308 // LLVMDC
309 enum ARCH
310 {
311 ARCHx86,
312 ARCHx86_64,
313 ARCHppc,
314 ARCHppc_64
315 };
316
317 void error(Loc loc, const char *format, ...); 323 void error(Loc loc, const char *format, ...);
318 void verror(Loc loc, const char *format, va_list); 324 void verror(Loc loc, const char *format, va_list);
319 void fatal(); 325 void fatal();
320 void err_nomem(); 326 void err_nomem();
321 void inifile(char *argv0, char *inifile); 327 void inifile(char *argv0, char *inifile);