comparison dmd/lexer.c @ 1103:b30fe7e1dbb9

- Updated to DMD frontend 1.041. - Removed dmd/inifile.c , it's not under a free license, replaced with libconfig based config file.
author Tomas Lindquist Olsen <tomas.l.olsen gmail.com>
date Thu, 12 Mar 2009 20:37:27 +0100
parents aa953cc960b6
children 226c07c71967
comparison
equal deleted inserted replaced
1102:ae950bd712d3 1103:b30fe7e1dbb9
18 #include <stdarg.h> 18 #include <stdarg.h>
19 #include <errno.h> 19 #include <errno.h>
20 #include <wchar.h> 20 #include <wchar.h>
21 #include <stdlib.h> 21 #include <stdlib.h>
22 #include <assert.h> 22 #include <assert.h>
23 #include <math.h>
24
25 #if _MSC_VER
26 #include <time.h>
27 #else
23 #include <sys/time.h> 28 #include <sys/time.h>
24 #include <math.h> 29 #endif
25 30
26 #ifdef IN_GCC 31 #ifdef IN_GCC
27
28 #include <time.h> 32 #include <time.h>
29 #include "mem.h" 33 #elif __GNUC__
30
31 #else
32
33 #if __GNUC__
34 #include <time.h> 34 #include <time.h>
35 #endif 35 #endif
36 36
37 #if IN_LLVM 37 #include "rmem.h"
38 #include "mem.h"
39 #elif _WIN32
40 #include "..\root\mem.h"
41 #else
42 #include "../root/mem.h"
43 #endif
44 #endif
45 38
46 #include "stringtable.h" 39 #include "stringtable.h"
47 40
48 #include "lexer.h" 41 #include "lexer.h"
49 #include "utf.h" 42 #include "utf.h"
52 #include "module.h" 45 #include "module.h"
53 46
54 #if _WIN32 && __DMC__ 47 #if _WIN32 && __DMC__
55 // from \dm\src\include\setlocal.h 48 // from \dm\src\include\setlocal.h
56 extern "C" char * __cdecl __locale_decpoint; 49 extern "C" char * __cdecl __locale_decpoint;
50 #endif
51
52 #if _MSC_VER // workaround VC++ bug, labels and types should be in separate namespaces
53 #define Lstring Lstr
57 #endif 54 #endif
58 55
59 extern int HtmlNamedEntity(unsigned char *p, int length); 56 extern int HtmlNamedEntity(unsigned char *p, int length);
60 57
61 #define LS 0x2028 // UTF line separator 58 #define LS 0x2028 // UTF line separator
138 sprintf(buffer,"%uU",uns32value); 135 sprintf(buffer,"%uU",uns32value);
139 #endif 136 #endif
140 break; 137 break;
141 138
142 case TOKint64v: 139 case TOKint64v:
143 sprintf(buffer,"%lldL",(long long)int64value); 140 sprintf(buffer,"%jdL",int64value);
144 break; 141 break;
145 142
146 case TOKuns64v: 143 case TOKuns64v:
147 sprintf(buffer,"%lluUL",(unsigned long long)uns64value); 144 sprintf(buffer,"%juUL",uns64value);
148 break; 145 break;
149 146
150 #if IN_GCC 147 #if IN_GCC
151 case TOKfloat32v: 148 case TOKfloat32v:
152 case TOKfloat64v: 149 case TOKfloat64v: