[M3devel] use of LLVM

Henning Thielemann lemming at henning-thielemann.de
Tue May 22 10:45:24 CEST 2012


On Mon, 21 May 2012, Hendrik Boom wrote:

> The problem I had with LLVM for Algol 68 was that I couldn't use a type
> before it was completely defined.  THis means that there are stark
> constraints on the use of incomplete types.  I wanted to build a
> structure to represent a stack frame, containing local variables and
> the like, and having the field offsets afailable for type descriptors
> for the garbage collector.  But even though LLVM could have computed
> field offsets along the way, as they were contributed to the structure,
> instead it decided to diallow all use of the structure until its
> definition was complete.  UNfortunately, I didn't know what all the
> fields would be until I got to finish generating the code that used the
> stack frame.

I thought that you can disable pointer type checking completely by using 
i8* and cast it forth and back as you need it.



More information about the M3devel mailing list