Implicit Conversions
Extension to Data_Types
Soldat Pascal Variant Typed Implicit Conversions | |||||||||||||||||||||
2 | 3 | 5.1 | 5.2 | 5.3 | 8.1 | 8.2 | 9 | 11 | 16 | 17.1 | 17.2 | 17.3 | 18 | 19 | 20 | 256.1 | 256.2 | 8204 | |||
variant (unassigned) | 0 | 0 | 0 | 0 | 0 | 0 |
| inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | inc | |||
variant <null> | 1 | ex | ex | ex | ex | ex | ex | ex | inc | ex | ex | ex | ex | ex | ex | inc | inc | inc | ex | inc | |
smallint (sint16) | 2 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
integer, longint (sint32) | 3 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
single (floating point) | 5.1 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
double (floating point) | 5.2 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
extended (floating point) | 5.3 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
WideChar | 8.1 | ex | ex | ex | ex | ex | ex | inc | ex | ex | ex | ex | ex | ex | inc | inc | inc | inc | |||
WideString | 8.2 | ex | ex | ex | ex | ex | ex | inc | ex | ex | ex | ex | ex | ex | inc | inc | inc | inc | |||
IDispatch | 9 | ex | ex | ex | ex | ex | ex | ex | inc | ex | ex | ex | ex | ex | ex | inc | inc | inc | ex | inc | |
boolean | 11 | 0 | 0 | 0 | 0 | 0 |
| False | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | False | inc | |
shortint (sint8) | 16 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
byte (uint8) | 17.1 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
enum | 17.2 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
TIFException | 17.3 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
word, TVarType (uint16) | 18 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
cardinal, longword (uint32) | 19 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
Int64 (sint64) | 20 | 0 | 0 | 0 | 0 | 0 |
| 0 | inc | False | 0 | 0 | unk? | unk? | 0 | inc | inc | inc | 0 | inc | |
char | 256.1 | ex | ex | ex | ex | ex | \x00 | inc | inc | False | ex | ex | unk? | unk? | inc | inc | inc | inc | \x00 | inc | |
string | 256.2 | ex | ex | ex | ex | ex | ex | inc | ex | ex | ex | ex | ex | ex | inc | inc | inc | inc | |||
array of <type> | 8204 | ex | ex | ex | ex | ex | ex | ex | inc | ex | ex | ex | ex | ex | ex | inc | inc | inc | ex | inc | |
Refer to http://www.podgoretsky.com/ftp/docs/Delphi/D5/oplg/datatype.html#25277 for some implicit conversions.