Data types derived from the C language

Data types derived from the C language

The Vue language supports most of the data types defined in the C-89 specification. They include the signed and unsigned versions of the integral data types: char, short, int, long and long long. A "plain" char is treated as unsigned while the other integral types, if unqualified, are treated as signed. This matches the implementation of C on PowerPC. The Vue language also supports the floating types: float and double. In addition to these basic types of the C language, Vue also supports derived types like the array, structure, union and pointer types, the enumeration type and some incomplete types like void.

Floating types
You can only use a floating point type in simple assignment expressions and as arguments for functions like printf. In particular, you cannot use floating-point variables as operands of any unary or binary operators other than the assignment operator.
Pointer types
You can use pointers to dereference kernel or application data. However, you cannot declare pointers to Vue script variables or take their addresses.
Character arrays
You cannot use a character array as a string as in C, but must use the string data type.
Incomplete types
You cannot use array types of unknown size.
Bit-field types
The Vue compiler ignores bit-field declarations and the layout of structure or union types that contain members, which are bit-fields, is undefined.
ILP32 and LP64 data models
Generally, a C program can be compiled in either 32-bit mode where it follows the ILP32 data model or in 64-bit mode where it follows the LP64 model. Because the same Vue clause can be issued by both 32-bit and 64-bit processes, Vue internally supports both models at the same time.