- emul-i386: - running without tracing, maybe with trapping, just mmap, execute and setting the stack (simple loader), maybe binfmt-compatible? - asm-i386: - device a new version which runs on c4 and is again freestanding - extend the opcodes slightly so we can use our current generator (and not the old inefficient stack machine) - c4/cc: - function forward definitons - checkout c5-AST branch - inline assembly - void parameter declaration for functions like f(void) instead of f() - global char array declarations: instead of char *buf, malloc(512) we could use char buf[512] - static: just ignore, we don't have a linker, otoh, just rewrite it whithout static, vararg, etc. so the code will later respect local definitions of functions. do not allow non-reentrant f() { static var; } constructs. - volatile: we are not doing any optimizations for now, so volatile (as const) can just be a ignored keyword. - void * allowing to omit (char *) from and to for instance structs in dynamic memory management