hedgewars/pas2cSystem.pas
author unc0rr
Fri, 30 Mar 2012 17:00:34 +0400
changeset 6837 a137733c5776
parent 6835 00b2fd32305d
child 6838 b1a0e7a52c04
permissions -rw-r--r--
Much better types handling, work correctly with functions
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6512
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
     1
system;
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
     2
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
     3
type 
6635
c2fa29fe2a58 Some progress, still can't find the source of bad behavior
unc0rr
parents: 6552
diff changeset
     4
    Integer = integer;
6512
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
     5
    LongInt = integer;
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
     6
    LongWord = integer;
6516
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
     7
    Cardinal = integer;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
     8
    PtrInt = integer;
6520
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
     9
    Word = integer;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    10
    Byte = integer;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    11
    SmallInt = integer;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    12
    ShortInt = integer;
6653
d45b6dbd2ad6 Move a bit further
unc0rr
parents: 6649
diff changeset
    13
    QWord = integer;
d45b6dbd2ad6 Move a bit further
unc0rr
parents: 6649
diff changeset
    14
    GLInt = integer;
d45b6dbd2ad6 Move a bit further
unc0rr
parents: 6649
diff changeset
    15
    GLUInt = integer;
6516
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    16
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    17
    pointer = pointer;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    18
    PChar = pointer;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    19
6649
7f78e8a6db69 Fix a bug with type declaration trying to resolve type being declared
unc0rr
parents: 6635
diff changeset
    20
    float = float;
6516
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    21
    double = float;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    22
    real = float;
6653
d45b6dbd2ad6 Move a bit further
unc0rr
parents: 6649
diff changeset
    23
    extended = float;
d45b6dbd2ad6 Move a bit further
unc0rr
parents: 6649
diff changeset
    24
    GLFloat = float;
6516
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    25
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    26
    boolean = boolean;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    27
    LongBool = boolean;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    28
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    29
    string = string;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    30
    shortstring = string;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    31
    ansistring = string;
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    32
addaeb1b9539 Further progress on dealing with namespaces
unc0rr
parents: 6512
diff changeset
    33
    char = char;
6520
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    34
    
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    35
    PByte = ^Byte;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    36
    PLongInt = ^LongInt;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    37
    PLongWord = ^LongWord;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    38
    PInteger = ^Integer;
6663
2c4151afad0c Workaround pointers to not yet defined types
unc0rr
parents: 6653
diff changeset
    39
    
2c4151afad0c Workaround pointers to not yet defined types
unc0rr
parents: 6653
diff changeset
    40
    Handle = integer;
2c4151afad0c Workaround pointers to not yet defined types
unc0rr
parents: 6653
diff changeset
    41
    stderr = Handle;
6512
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
    42
var 
0df7f6697939 "System" unit to help converter
unc0rr
parents:
diff changeset
    43
    false, true: boolean;
6520
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    44
    write, writeLn, read, readLn, inc, dec: procedure;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    45
    StrLen, ord, Succ, Pred : function : integer;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    46
    Low, High : function : integer;
6fecdc5d182f Some more work on scopes
unc0rr
parents: 6516
diff changeset
    47
    Now : function : integer;
6663
2c4151afad0c Workaround pointers to not yet defined types
unc0rr
parents: 6653
diff changeset
    48
    Length : function : integer;
6837
a137733c5776 Much better types handling, work correctly with functions
unc0rr
parents: 6835
diff changeset
    49
    Abs, Sqr : function : integer;
a137733c5776 Much better types handling, work correctly with functions
unc0rr
parents: 6835
diff changeset
    50
    StrPas, FormatDateTime, copy, delete, str : function : shortstring;
a137733c5776 Much better types handling, work correctly with functions
unc0rr
parents: 6835
diff changeset
    51
    exit, flush : procedure;
a137733c5776 Much better types handling, work correctly with functions
unc0rr
parents: 6835
diff changeset
    52
    Sqrt : function : float;
a137733c5776 Much better types handling, work correctly with functions
unc0rr
parents: 6835
diff changeset
    53
    TextFile : Handle;