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

Reply via email to