Am 19.04.2013 19:39, schrieb Sönke Ludwig:
Am 19.04.2013 18:44, schrieb Matej Nanut:
Can it be because the parameter passed into renderCompat is actually an "in javaRunVM" instead of a plain "javaRunVM"?
Yes, that sounds very likely. The reason is that
const(T)andThave
a differentTypeInfoand this is used in the assertion to check the
type. Maybe the assertion should rather useVariant.convertToand be
less strict about the actual type...BTW the reason for release builds working is simply because assertions
are disabled in release mode andVariant.getpresumably is able to
implicitly convert the value to non-cost.I'll go ahead and change the assertion to use
convertsTo.
Okay looking closer, this happens in the code path where no Variant is
involved at all, so using convertsTo is not an option. I've opened a
ticket with a possible alternative approach instead:
https://github.com/rejectedsoftware/vibe.d/issues/219