author | unc0rr |
Sat, 14 Apr 2012 23:36:57 +0400 | |
changeset 6889 | 149638c9cbc4 |
parent 6873 | 30840365af0a |
child 6891 | ab9843957664 |
permissions | -rw-r--r-- |
6512 | 1 |
system; |
2 |
||
3 |
type |
|
6635
c2fa29fe2a58
Some progress, still can't find the source of bad behavior
unc0rr
parents:
6552
diff
changeset
|
4 |
Integer = integer; |
6512 | 5 |
LongInt = integer; |
6 |
LongWord = integer; |
|
6516 | 7 |
Cardinal = integer; |
8 |
PtrInt = integer; |
|
6520 | 9 |
Word = integer; |
10 |
Byte = integer; |
|
11 |
SmallInt = integer; |
|
12 |
ShortInt = integer; |
|
6653 | 13 |
QWord = integer; |
14 |
GLInt = integer; |
|
15 |
GLUInt = integer; |
|
6838 | 16 |
gl_unsigned_byte = integer; |
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
17 |
Int = integer; |
6516 | 18 |
|
19 |
pointer = pointer; |
|
20 |
||
6649
7f78e8a6db69
Fix a bug with type declaration trying to resolve type being declared
unc0rr
parents:
6635
diff
changeset
|
21 |
float = float; |
6838 | 22 |
single = float; |
6516 | 23 |
double = float; |
24 |
real = float; |
|
6653 | 25 |
extended = float; |
26 |
GLFloat = float; |
|
6838 | 27 |
gl_float = float; |
6516 | 28 |
|
29 |
boolean = boolean; |
|
30 |
LongBool = boolean; |
|
31 |
||
32 |
string = string; |
|
33 |
shortstring = string; |
|
34 |
ansistring = string; |
|
6838 | 35 |
widechar = string; |
6516 | 36 |
|
37 |
char = char; |
|
6873 | 38 |
PChar = ^char; |
6520 | 39 |
|
40 |
PByte = ^Byte; |
|
41 |
PLongInt = ^LongInt; |
|
42 |
PLongWord = ^LongWord; |
|
43 |
PInteger = ^Integer; |
|
6663 | 44 |
|
45 |
Handle = integer; |
|
46 |
stderr = Handle; |
|
6838 | 47 |
|
6512 | 48 |
var |
49 |
false, true: boolean; |
|
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
50 |
|
6838 | 51 |
write, writeLn, read, readLn: procedure; |
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
52 |
|
6520 | 53 |
StrLen, ord, Succ, Pred : function : integer; |
6838 | 54 |
inc, dec, Low, High, Lo, Hi : function : integer; |
55 |
odd, even : function : boolean; |
|
56 |
||
6520 | 57 |
Now : function : integer; |
6838 | 58 |
|
59 |
new, dispose, FillChar, Move : procedure; |
|
60 |
||
61 |
trunc, round : function : integer; |
|
6837
a137733c5776
Much better types handling, work correctly with functions
unc0rr
parents:
6835
diff
changeset
|
62 |
Abs, Sqr : function : integer; |
6838 | 63 |
|
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
64 |
StrPas, FormatDateTime, copy, delete, str, pos, trim : function : shortstring; |
6856 | 65 |
Length, StrToInt : function : integer; |
66 |
SetLength, val : procedure; |
|
6838 | 67 |
|
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
68 |
assign, rewrite, reset, flush, BlockWrite, BlockRead, close : procedure; |
6838 | 69 |
IOResult : function : integer; |
6853 | 70 |
exit, break, halt, continue : procedure; |
6843
59da15acb2f2
Finally fix the bug with pointer declarations polluting namespace with bad records
unc0rr
parents:
6838
diff
changeset
|
71 |
TextFile, file : Handle; |
6853 | 72 |
FileMode : integer; |
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
73 |
FileExists, DirectoryExists, eof : function : boolean; |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
74 |
ExtractFileName : function : string; |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
75 |
exitcode : integer; |
6853 | 76 |
|
77 |
ParamCount : function : integer; |
|
78 |
ParamStr : function : string; |
|
6838 | 79 |
|
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
80 |
sqrt, arctan2, pi, cos, sin, power : function : float; |
6838 | 81 |
|
82 |
TypeInfo, GetEnumName : function : shortstring; |
|
83 |
||
84 |
UTF8ToUnicode, WrapText: function : shortstring; |
|
85 |
||
86 |
sizeof : function : integer; |
|
87 |
||
88 |
GetMem : function : pointer; |
|
89 |
FreeMem : procedure; |
|
90 |
||
91 |
gl_texture_2d, glbindtexture, gltexparameterf, gl_rgba, |
|
92 |
glteximage2d, glvertexpointer, gltexcoordpointer, |
|
93 |
gl_triangle_fan, gldrawarrays, glpushmatrix, glpopmatrix, |
|
94 |
gltranslatef, glscalef, glrotatef, gldisable, glenable, |
|
95 |
gl_line_smooth, gllinewidth, gl_lines, gl_line_loop, |
|
96 |
glcolor4ub, gl_texture_wrap_s, gltexparameteri, |
|
97 |
gl_texture_wrap_t, gl_texture_min_filter, |
|
98 |
gl_linear, gl_texture_mag_filter, glgentextures, |
|
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
99 |
gldeletetextures, glreadpixels, glclearcolor, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
100 |
gl_line_strip, gldeleterenderbuffersext, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
101 |
gldeleteframebuffersext, glext_loadextension, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
102 |
gl_max_texture_size, glgetintegerv, gl_renderer, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
103 |
glgetstring, gl_vendor, gl_version, glgenframebuffersext, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
104 |
glbindframebufferext, glgenrenderbuffersext, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
105 |
glbindrenderbufferext, glrenderbufferstorageext, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
106 |
glframebufferrenderbufferext, glframebuffertexture2dext, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
107 |
gl_framebuffer_ext, gl_depth_component, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
108 |
gl_depth_attachment_ext, gl_renderbuffer_ext, gl_rgba8, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
109 |
gl_color_attachment0_ext, gl_modelview, gl_blend, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
110 |
gl_src_alpha, gl_one_minus_src_alpha, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
111 |
gl_perspective_correction_hint, gl_fastest, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
112 |
gl_dither, gl_vertex_array, gl_texture_coord_array, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
113 |
glviewport, glloadidentity, glmatrixmode, glhint, |
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
114 |
glblendfunc, glenableclientstate, gl_color_buffer_bit, |
6856 | 115 |
glclear, gldisableclientstate, gl_color_array, |
116 |
glcolorpointer, gl_depth_buffer_bit, gl_quads, |
|
117 |
glbegin, glend, gltexcoord2f, glvertex2d, |
|
118 |
gl_true, gl_false, glcolormask, gl_projection : procedure; |
|
6838 | 119 |
|
120 |
TThreadId : function : integer; |
|
6854
873929cbd54b
Normalize RecordFields before conversion. Helps with namespaces problem.
unc0rr
parents:
6853
diff
changeset
|
121 |
BeginThread, ThreadSwitch : procedure; |
873929cbd54b
Normalize RecordFields before conversion. Helps with namespaces problem.
unc0rr
parents:
6853
diff
changeset
|
122 |
InterlockedIncrement, InterlockedDecrement : procedure; |
6853 | 123 |
|
124 |
random : function : integer; |
|
6855
807156c01475
Finish the toughest part of the converter. Now it knows types of everything, so could correctly recognize bitwise operators and type convertions.
unc0rr
parents:
6854
diff
changeset
|
125 |
randomize : procedure; |
6853 | 126 |
|
127 |
Assigned : function : boolean; |
|
6854
873929cbd54b
Normalize RecordFields before conversion. Helps with namespaces problem.
unc0rr
parents:
6853
diff
changeset
|
128 |
|
6860 | 129 |
_strconcat : function : string; |
130 |
_strcompare, _strncompare : function : boolean; |