Closed napard closed 2 years ago
Can you please give me a bit more information, e.g. what means "Following the manual compilation procedure"? Did you compile using ObxIde2.pro or which *.pro file? Which version or commit did you use to compile?
I compiled the IDE following the detailed steps on the Build Steps section in the README.md
Commit used is the latest, direct downloaded from the zip file generated by GitHub.
After downloading the required zip files, extracting and renaming as detailed in the build steps, I used qmake and make to generate the executable.
Maybe I could give more detail when going back to the build PC later...
I just compiled the IDE and compiled/run some applications from the testcases subdirectory, which worked as expected. But there are indeed issues with the two Example.obxpro. Thank you for pointing that out to me. I didn't have a look at these examples for a few month and made some language updates since then. I will have a look at it tonight and provide a fix.
Thank you very much, I'll do some other tests in the meantime and report accordingly if needed.
There was an issue in Pelib which only occured when trying to write to the receiver parameter of a bound procedure (which is only done in the somewhat peculiar List example I adopted from Wikipedia). Pelib originally was not ready for virtual and instance methods; I had to add this functionality and apparently didn't consider each affected code part; I hope that now I found all of them. There is a new commit for both the Pelib and Oberon repository.
Can we close this?
Following the manual compilation procedure, I get the folowwing error when trying to compile any module of the examples folder:
ObxIDE: ../PeLib/MethodSignature.cpp:122: DotNetPELib::Param* DotNetPELib::MethodSignature::getParam(int, bool) const: Assertion `false' failed.
I've tried other modules from the examples and from test cases and the same problem appears. Note that exporting to C seems to work, I didn't try to compile the generated C code in any way though.