fix bug where the compiler stops parsing on an empty argument, added more tests, better coverage