Bytes, chars, ints, etc (gnu algol 68, C, ...)
Pietro Monteiro
pietro.gcc@sociotechnical.xyz
Fri Jan 16 04:18:03 GMT 2026
- Previous message (by thread): Bytes, chars, ints, etc (gnu algol 68, C, ...)
- Next message (by thread): Bytes, chars, ints, etc (gnu algol 68, C, ...)
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Sorry to cut into the conversation. For 32 and 64-bit targets this is
the proposed equivalence between Algol 68 and C types in GCC:
| GA 68 Name | GA 68 Size | C Name | ILP32 | LP64 | LLP64 |
| ----------- | ---------- | ------------- | ----- | ---- | ----- |
| short short | 8 | (signed) char | 8 | 8 | 8 |
| short | 16 | short | 16 | 16 | 16 |
| int | 32 | int | 32 | 32 | 32 |
| int | 32 | long | 32 | | 32 |
| long | 64 | long | | 64 | |
| long | 64 | long long | 64 | 64 | 64 |
| long long | 128 | __int128 | 128 | 128 | 128 |
So for example our lseek would return an A68 long int, which is to say a C long int.
We need to decide what to do for AVR;
On 8-bit AVR:
| C Name | Size |
| ------------- | ----- |
| (signed char) | 8 |
| short | 8 |
| int | 8 |
| long | 16 |
| long long | 32 |
On 16-bits AVR:
| C Name | Size |
| ------------- | ----- |
| (signed char) | 8 |
| short | 16 |
| int | 16 |
| long | 32 |
| long long | 64 |
pietro
- Previous message (by thread): Bytes, chars, ints, etc (gnu algol 68, C, ...)
- Next message (by thread): Bytes, chars, ints, etc (gnu algol 68, C, ...)
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Algol68
mailing list