diff options
Diffstat (limited to 'mcs/class/Mono.CSharp.Debugger/README')
-rw-r--r-- | mcs/class/Mono.CSharp.Debugger/README | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/mcs/class/Mono.CSharp.Debugger/README b/mcs/class/Mono.CSharp.Debugger/README deleted file mode 100644 index 4fb2043099f..00000000000 --- a/mcs/class/Mono.CSharp.Debugger/README +++ /dev/null @@ -1,43 +0,0 @@ -This is an implementation of the System.Diagnostics.SymbolStore.ISymbolWriter -interface which writes a dwarf debugging information file. - -Unfortunately there are several major problems with this interface and I'm -unsure how to solve them: - -1.) The interface contains a constructor method `Initialize' which has an - 'IntPtr' emitter argument which seems to be a pointer to the actual - symbol writer which resides in a proprietary, undocumented DLL (I spent - almost 3 hours browsing the ".NET Framework SDK Documentation" and - msdn.microsoft.com - without success. - - A short test showed me that mscorlib doesn't like passing zero, this - won't give you the system's default implementation. - - To solve this problem, I created a derived interface IMonoSymbolWriter - which contains an additional constructor which only takes the name of - the symbol file as argument. - - void Initialize (string filename); - -2.) You seem to get an instance of a class implementing this interface by - creating a new instance of System.Reflection.Emit.ModuleBuilder (with the - `bool createSymbolFile' argument) and then calling GetSymWriter() on - the returned object. - - So far so good, but how does this method find out which symbol writer - to use ? - -3.) According to the documentation, some of the methods of - System.Reflection.Emit.ILGenerator and System.Reflection.Emit.LocalBuilder - seem to use the symbol writer to emit symbol debugging information. - - But again, how do these objects get the symbol writer ? - -Currently, there are two ways to use this assembly: - -a.) Fix the problems outlined above and dynamically load this assembly - (Mono.CSharp.Debugger.dll) when a new symbol writer is created. - -b.) Reference this assembly in your application and manually create the - symbol writer using the constructor. - |