Hello, I just pulled the latest version of cecil
(6bb35b1ec97e1aaf838e36912067aeab33cea408) and I noticed that the
ThisParameter type of the object constructor has changed. Here is my
little F# program to demo the change:
open Mono.Cecil
[<EntryPoint>]
let main args =
match args with
| [|inAssemFile|] ->
let assem = AssemblyDefinition.ReadAssembly inAssemFile
let objType = assem.MainModule.TypeSystem.Object
let meths = objType.Resolve().Methods
let ctor = Seq.find (fun (m : MethodDefinition) ->
m.IsConstructor) meths
printfn "this arg type for Object ctor is: %A"
(ctor.Body.ThisParameter.ParameterType)
| _ -> failwith (sprintf "bad options %A" args)
// exit success
0
For the my older revision (5490b9bc05bd2efa8ed0e18f1c2da10e8e75f56b)
this prints:
this arg type for Object ctor is: System.Object
and for the new version it prints:
this arg type for Object ctor is: System.Object*
So the object param became an object pointer param. Is this a bug?
Thanks
Keith
--
keithsheppard.name
--
--
mono-cecil