author | nemo |
Sun, 30 Nov 2014 16:06:39 -0500 | |
changeset 10592 | 2da35f88db23 |
parent 10564 | 0cb20aa8877a |
child 10838 | 2abe883c9c21 |
permissions | -rw-r--r-- |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
1 |
redo; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
2 |
{This file contains functions that are re-implemented} |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
3 |
{pas2c will add prefix fpcrtl_ to all these functions} |
10015 | 4 |
type |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
5 |
uinteger = uinteger; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
6 |
Integer = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
7 |
LongInt = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
8 |
LongWord = uinteger; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
9 |
Cardinal = uinteger; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
10 |
PtrInt = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
11 |
Word = uinteger; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
12 |
Byte = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
13 |
SmallInt = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
14 |
ShortInt = integer; |
8105 | 15 |
Int64 = integer; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
16 |
QWord = uinteger; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
17 |
GLint = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
18 |
GLuint = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
19 |
int = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
20 |
size_t = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
21 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
22 |
pointer = pointer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
23 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
24 |
float = float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
25 |
single = float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
26 |
double = float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
27 |
real = float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
28 |
extended = float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
29 |
GLfloat = float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
30 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
31 |
boolean = boolean; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
32 |
LongBool = boolean; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
33 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
34 |
string = string; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
35 |
shortstring = string; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
36 |
ansistring = string; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
37 |
widechar = string; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
38 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
39 |
char = char; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
40 |
PChar = ^char; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
41 |
PPChar = ^Pchar; |
10015 | 42 |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
43 |
PByte = ^Byte; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
44 |
PLongInt = ^LongInt; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
45 |
PLongWord = ^LongWord; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
46 |
PInteger = ^Integer; |
10015 | 47 |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
48 |
Handle = integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
49 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
50 |
var |
9966 | 51 |
write, writeLn, read, readLn, flush, CreateDir: procedure; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
52 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
53 |
halt:procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
54 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
55 |
GetEnumName:function:shortstring; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
56 |
TypeInfo:function:Integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
57 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
58 |
lo:function:Integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
59 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
60 |
init:procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
61 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
62 |
StrLen:function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
63 |
odd, even : function : boolean; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
64 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
65 |
Length : function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
66 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
67 |
Now : function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
68 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
69 |
new, dispose, FillChar, Move : procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
70 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
71 |
trunc, round : function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
72 |
abs, sqr : function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
73 |
|
8856 | 74 |
StrPas, FormatDateTime, copy, delete, str, PosS, trim, LowerCase : function : shortstring; |
75 |
pos : function : integer; |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
76 |
StrToInt : function : integer; |
10131
4b4a043111f4
- pas2c recognizes typecasts in initialization expressions
unc0rr
parents:
10120
diff
changeset
|
77 |
SetLength, SetLengthA, val, StrDispose, StrCopy : procedure; |
10120 | 78 |
_pchar, _pcharA, StrAlloc : function : PChar; |
79 |
pchar2str, astr2str : function : string; |
|
80 |
pchar2astr, str2astr : function : ansistring; |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
81 |
memcpy : procedure; |
10080 | 82 |
StrLength : function : integer; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
83 |
|
8856 | 84 |
min, max:function:integer; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
85 |
assign, rewrite, rewrite_2, reset, reset_2, flush, BlockWrite, BlockRead, close : procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
86 |
FileExists, DirectoryExists, eof : function : boolean; |
10564
0cb20aa8877a
more fixing and allow pas2c to run tests. they will still fail though - engine does not exit with the specified exit codes, also data types are messed up
sheepluva
parents:
10131
diff
changeset
|
87 |
ExtractFileDir : function : string; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
88 |
ExtractFileName : function : string; |
10015 | 89 |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
90 |
ParamCount : function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
91 |
ParamStr : function : string; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
92 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
93 |
arctan2, power: function : float; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
94 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
95 |
//TypeInfo, GetEnumName : function : shortstring; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
96 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
97 |
UTF8ToUnicode, WrapText: function : shortstring; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
98 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
99 |
GetMem : function : pointer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
100 |
FreeMem : procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
101 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
102 |
BeginThread, ThreadSwitch : procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
103 |
InterlockedIncrement, InterlockedDecrement : procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
104 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
105 |
random : function : integer; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
106 |
randomize : procedure; |
10015 | 107 |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
108 |
Assigned : function : boolean; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
109 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
110 |
//EnumToStr : function : string; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
111 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
112 |
initParams : procedure; |
10015 | 113 |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
114 |
Load_GL_VERSION_2_0 : procedure; |
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
115 |
|
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
diff
changeset
|
116 |