Skip to content
a nwe version for JamVM1.0.0
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


a nwe version for JamVM1.0.0

Build JamVM

neojam has been fixed some JamVM's compile error when using GCC4.X, one of them like this:

  dll_md.c:37:32: error: lvalue required as increment operand
  SCAN_SIG(sig, ((u8)apntr)++ = ((u8)opntr)++, *apntr++ = *opntr++);

The reason is that it uses some very old (and now omitted) GNU C extensions(cast-as-lvalue). A heavyweight but working approach is to modify the code manually, for instance, the above code can be rewritten as:

u8 *temp = (u8 *)apntr;
*temp = *((u8*)opntr)++;
apntr = temp;

neojam has been fixed all the cast-as-lvalue.

Another fix is to remove some code with undefined behavior, one such example is:

*ostack++ = ostack[-1];

For details, see

You can’t perform that action at this time.