Hm. That is odd.
It could be that our Remobjects codegen is due for an overhaul. There have probably been some changed to the RODL format that cause this.
The ";" in the parameter-list points to the codegen trying to read a parameter, but failing - leaving only a separator before it continued with the next.
Secondly, it seem odd that the codegen would perform an "indexof" something, and return the index rather than using the index to return the item in question. I would guess (without having looked at the RODL) that the code should look like something along these lines:
result := TAccessRight(enumvalues[enumvalues.indexof(self.value)]);
What version of Remobjects SDK are you using?
It may be prudent to create a test-server and slowly add features to establish what is actually broken?
From the looks of it, the error here seems to affect complex types -- so i would imagine that the format of complex types in the RODL file has changed between versions.
We will ofcourse take note of this and give it some attention, but if we could pinpoint what exactly fails that would make things easier.
For instance, does functions and procedures using only intrinsic datatypes work fine?
Does TAccessRight contain other datatypes other than intrinsic, or are there collections/arrays defined there?