The Ada front-end generates a "main" with a bogus prototype as far as lli is concerned (it uses integers rather than pointers for argv and envp).
In general, unless you are really careful about the main prototype, lli will fail. Perhaps the lli code should be refactored to be more forgiving?
I agree - it should at least support everything which is ABI compatible with main, eg: a main which uses integers instead of pointers as long as they are of pointer size.
Duncan, should this be closed?
lli continues to be unforgiving. I would like to keep it open for the moment.