When an entity has the same name as a java keyword the variable names used/created by the controller script cause the generated files to be invalid/erroneous.
entity --class ~.products.Package
will create method signatures on controller aspects which call something like:
this will not compile correctly due to the package keyword being used as a variable.
I assume that this problem will occur for most java keywords as well as those used by aspectj.