builder@x64-linux-1:~/martin/debugger/build> pwd /home/builder/martin/debugger/build builder@x64-linux-1:~/martin/debugger/build> cat ../test/src/TestSimple.cs using System; class X { static void Main () { Uri uri = new Uri ("http://www.mono-project.com/"); Console.WriteLine (uri); } } builder@x64-linux-1:~/martin/debugger/build> gmcs ../test/src/TestSimple.cs builder@x64-linux-1:~/martin/debugger/build> mdb -run ../test/src/TestSimple.exe Mono Debugger Starting program: ../test/src/TestSimple.exe Symbol file `/home/builder/martin/debugger/test/src/TestSimple.exe.mdb' does not match assembly `/home/builder/martin/debugger/test/src/TestSimple.exe' Thread @1 stopped at #0: 0x4001aa70 in +0x10 at 2. 2 IL_0005: newobj 0x0a000002 (mdb) q The program is running. Exit anyway? (y or n) y Thread @1 exited normally. Process #1 exited. Target exited. builder@x64-linux-1:~/martin/debugger/build> clear builder@x64-linux-1:~/martin/debugger/build> pwd /home/builder/martin/debugger/build builder@x64-linux-1:~/martin/debugger/build> cat ../test/src/TestSimple.cs using System; class X { static void Main () { Uri uri = new Uri ("http://www.mono-project.com/"); Console.WriteLine (uri); } } builder@x64-linux-1:~/martin/debugger/build> gmcs -debug ../test/src/TestSimple.cs builder@x64-linux-1:~/martin/debugger/build> mdb -run ../test/src/TestSimple.exe Mono Debugger Starting program: ../test/src/TestSimple.exe Thread @1 stopped at #0: 0x4001aa70 in X.Main()+0x10 at /home/builder/martin/debugger/test/src/TestSimple.cs:7. 7 Uri uri = new Uri ("http://www.mono-project.com/"); (mdb) n Thread @1 stopped at #0: 0x4001aa8d in X.Main()+0x2d at /home/builder/martin/debugger/test/src/TestSimple.cs:8. 8 Console.WriteLine (uri); (mdb) p uri (System.Uri) { "http://www.mono-project.com/" } (mdb) ptype uri class System.Uri : System.Object { bool isUnixFilePath; string source; string scheme; string host; int port; string path; string query; string fragment; string userinfo; bool isUnc; bool isOpaquePart; bool isAbsoluteUri; string[] segments; bool userEscaped; string cachedAbsoluteUri; string cachedToString; string cachedLocalPath; int cachedHashCode; System.UriParser parser; const int MaxUriLength = 32766; static string hexUpperChars; static string SchemeDelimiter; static string UriSchemeFile; static string UriSchemeFtp; static string UriSchemeGopher; static string UriSchemeHttp; static string UriSchemeHttps; static string UriSchemeMailto; static string UriSchemeNews; static string UriSchemeNntp; static string UriSchemeNetPipe; static string UriSchemeNetTcp; static System.Uri/UriScheme[] schemes; string AbsolutePath { get; }; string AbsoluteUri { get; }; string Authority { get; }; string Fragment { get; }; string Host { get; }; System.UriHostNameType HostNameType { get; }; bool IsDefaultPort { get; }; bool IsFile { get; }; bool IsLoopback { get; }; bool IsUnc { get; }; string LocalPath { get; }; string PathAndQuery { get; }; int Port { get; }; string Query { get; }; string Scheme { get; }; string[] Segments { get; }; bool UserEscaped { get; }; string UserInfo { get; }; string DnsSafeHost { get; }; bool IsAbsoluteUri { get; }; string OriginalString { get; }; System.UriParser Parser { get; set; }; void System.Runtime.Serialization.ISerializable.GetObjectData (System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext); void EnsureAbsoluteUri (); void Canonicalize (); void CheckSecurity (); bool Equals (object); bool InternalEquals (System.Uri); int GetHashCode (); string GetLeftPart (System.UriPartial); System.Uri MakeRelativeUri (System.Uri); string MakeRelative (System.Uri); string ToString (); void GetObjectData (System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext); void Escape (); void Parse (); void ParseUri (); string Unescape (string); void ParseAsWindowsUNC (string); void ParseAsWindowsAbsoluteFilePath (string); void ParseAsUnixAbsoluteFilePath (string); void Parse (string); string GetOpaqueWiseSchemeDelimiter (); bool IsBadFileSystemCharacter (char); bool IsReservedCharacter (char); string GetComponents (System.UriComponents, System.UriFormat); bool IsBaseOf (System.Uri); bool IsWellFormedOriginalString (); static System.UriHostNameType CheckHostName (string); static bool IsIPv4Address (string); static bool IsDomainAddress (string); static bool CheckSchemeName (string); static bool IsAlpha (char); static int FromHex (char); static string HexEscape (char); static char HexUnescape (string, int&); static bool IsHexDigit (char); static bool IsHexEncoding (string, int); static string EscapeString (string); static string EscapeString (string, bool, bool, bool); static string Unescape (string, bool); static string Reduce (string); static char HexUnescapeMultiByte (string, int&, char&); static string GetSchemeDelimiter (string); static int GetDefaultPort (string); static bool IsExcludedCharacter (char); static bool IsPredefinedScheme (string); static int Compare (System.Uri, System.Uri, System.UriComponents, System.UriFormat, System.StringComparison); static bool NeedToEscapeDataChar (char); static string EscapeDataString (string); static bool NeedToEscapeUriChar (char); static string EscapeUriString (string); static bool IsWellFormedUriString (string, System.UriKind); static bool TryCreate (string, System.UriKind, System.Uri&); static bool TryCreate (System.Uri, string, System.Uri&); static bool TryCreate (System.Uri, System.Uri, System.Uri&); static string UnescapeDataString (string); static int GetInt (System.Byte); static int GetChar (string, int, int); static char[] GetChars (System.IO.MemoryStream, System.Text.Encoding); .ctor (string); .ctor (System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext); .ctor (string, System.UriKind); .ctor (System.Uri, System.Uri); .ctor (string, bool); .ctor (System.Uri, string); .ctor (System.Uri, string, bool); .cctor (); } (mdb) q The program is running. Exit anyway? (y or n) y Thread @1 exited normally. Process #1 exited. Target exited. builder@x64-linux-1:~/martin/debugger/build>