Code: Select all
*var2.b=AllocateMemory(100); *var2 is a pointer (i.e. in a 32 bit architecture *var2 is a long -32 bit- ), which is suposed to point to a byte variable.
*var3.s=AllocateMemory(100); *var3 is a pointer (i.e. in a 32 bit architecture *var3 is a long -32 bit- ), which is suposed to point to a string variable.

The idea to solve it might be to allow pointers to strings normally, but internally treat them as *var.c.
This would solve the incoherence and at the same time it would not touch anything in PB.
Another related point is:
At the PB manual is written:
The point to understand here is that there are no fields inside native types like .l or .b, so why would you make a pointer to such a type? Only structured types, user or native, make sense.assigning a type to a pointer (*Pointer.l , *Pointer.b …) makes no sense
But well; It also makes sense for standard native types just for readability.