Open wessleym opened 5 years ago
Hi @wessleym - Can you please branch, fix this, and then submit as a Pull Request?
thanks - dave
@DavidThi808, are you asking me to make a fork and fix the bug? I would like to help, but I don't know how to fix the bug. tw
is passed into the EmitBox
method as null. I don't know if null is valid or not for tw
. For this circumstance, I would guess that either a NullReferenceException
should be thrown (and a real fix should be made elsewhere in the code, preventing tw
from being null) or no code should be emitted by EmitBox.
Hi @wessleym;
Yes. For something like this we don't have anyone available to fix this. So it's up to you if you need this.
thanks - dave
I don't know how it should be fixed because I don't have internal knowledge of your code. I was just filing a bug report, as the message in the program requested.
I'm afraid currently noone has the internal knowledge. It's not "his" code, as they just adopted an orphaned project so it won't die completely, as they're users of ikvm and need it.
The original author is no longer maintaining ikvm, and as far as I can see, noone else is deep enough in the code yet. :-(
Maybe seek guidance from this repo https://github.com/mono/ikvm-fork ? I see it's been updated recently.
Whoever is interested in IKVM might want to have a look at a new organisation trying(!) to revive that project and collecting developer resources. It contains the latest available source code with history and already some fixes, e.g. to get things a bit more compatible with .NET Core.
https://github.com/ikvm-revived
Going to post that to the mono-fork as well, because one of the reasons starting a new organisation was that every other fork I found seemed dead as well.
@ams-tschoening I see there's also https://github.com/jessielesbian/ikvm . Haven't looked into it at all, I just know it exists.
@NatElkins Thanks for mentioning, I documented that fork for further discussion:
It was relicensed to AGPL3, so that makes it a lot less interesting for many of us.
Is that relicensing even legal? It removes former copyright holders and doesn't look like the new maintainer has permissions to do so.
Hi @wessleym;
Yes. For something like this we don't have anyone available to fix this. So it's up to you if you need this.
thanks - dave
I build a version that works fine. So the error was at line no. 637 of file LambdaMetafactory.cs I attached the build version. So you can use that. IKVM.zip
@aaveshdev, that seemed to work. Would you mind making a pull request as David requested? Thank you!
@wessleym Sure, I'll do that.
The mentioned fix seems to be available in ikvm-revived already, so people might want to have a look at the master
there as well.
.\ikvmc.exe .\closure-compiler-v20190819.jar
This command results in this output:The
InvalidOperationException
above is thrown from the last line ofIKVM.Internal.Boxer.EmitBox
. I modified the code so I could inspect the program's state, andtw
is null. Thus, no match is found for null, and theInvalidOperationException
gets thrown.