[Mono-list] Invalid IL Code seen

Bob Denny rdenny at dc3.com
Mon Aug 31 19:59:08 EDT 2009

Running either Ubuntu with the Mono 2.4 package from the Monoxide repo or
Scientific Linux (a Red Hat derivative I think) on which I built Mono
from the stable sources (successfully!). Most of my program (a network broker
for a transient astronomy network called VOEvents) runs fine. However, I have a
VOEvent XML parser/validator that uses Liquid XML Data Binder to generate an
object model for the VOEvent XML schema. The generated code depends on their
runtime library for which I have no sources. When my wrapper for all of this is
called, here's what I get:

 System.TypeInitializationException: An exception was thrown by the type
initializer for VOEvent.Parser.Registration ---> System.InvalidProgramException:
Invalid IL code in .: (string,string,string,string): IL_000d: brfalse.s IL_001b
  at .. (System.String licensee, System.String schema, System.String
licenseCode) [0x00000]

  at LiquidTechnologies.Runtime.Net20.XmlObjectBase.Register (System.String
licensee, System.String schema, System.String licenseCode) [0x00000]
  at VOEvent.Parser.Registration.RegisterLicense () [0x00000]
  at VOEvent.Parser.Registration..cctor () [0x00000]
  --- End of inner exception stack trace ---
  at VOEvent.Message..ctor () [0x00000]
  at VOEvent.Simple.Document..ctor () [0x00000]
  ... blah blah blah

I'm unsure whether this is a problem with Mono or with Liquid's library, so I'm
posting here in case this rings a bell with someone. The Liquid code runs fine
on Windows under .NET 2.0. The fact that it is in the Liquid "resigtration" code
may be a key piece of evidence, or it may not! They told me that there is no
reason my code should not run under Mono - that my licensing info is self
contained in the built IL binaries.

Just looking for some thoughts...

  -- Bob

More information about the Mono-list mailing list