Re: [Mono-winforms-list] Experience with the Web Browser Control on Ubuntu Linux 8.10, crashes
On 2/14/09, W Allan Edwards silicon_pla...@hotmail.com wrote: I created a small test app that hosted the web browser control on windows. I then took that test app over to Linux and it did want to try and load Firefox versus IE. The problem though is I did not have the lib necessary to run Firefox as a control. I then installed this dependency. Finally, I ran the app and it just crashes. Are there any known issues with the Firefox control? It could be anything - wrong mono version, wrong firefox version, wrong gluezilla version, your app doing win32-specific or IE-only calls... without a specific error message / stacktrace along with what mono version you're running, it's impossible to tell :P andreia gaita ___ Mono-winforms-list maillist - Mono-winforms-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-winforms-list
Re: [Mono-winforms-list] WebBrowser don't support target='_blank'?
On 12/15/08, brooklet ezhangli...@163.com wrote: I create a WebBrowser like this: this.webBrowser1 = new System.Windows.Forms.WebBrowser(), but when I click a url in the browser like 'abbao', it don't open a new window,why? It's run well in .NET Framework。I use mono 2.01. View this message in context: WebBrowser don't support target='_blank'? Hey, sorry for the delay, this one slipped through my radar. It's very complicated to support opening new windows like this, because when you're running the webbrowser on mono, you're not actually running the browser, just the engine, and spawning new browser instances separate from the engine that's running under winforms is not something that can be easily implemented in a portable way. It's on my todo list, though, I'll try and get it in in a future release, if it's possible andreia gaita ___ Mono-winforms-list maillist - Mono-winforms-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-winforms-list
Re: [Mono-winforms-list] Find out if the application window is focused/active
On 2/8/09, Stifu st...@free.fr wrote: Long story short, I have the exact same problem as the one described here: http://bytes.com/groups/net-c/760728-application-focus I want to know if my application window is currently focused/active, but doing this.Focused doesn't return true if one the child controls of the application is focused. Off the top of my head, this.ActiveControl.Focused andreia gaita ___ Mono-winforms-list maillist - Mono-winforms-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-winforms-list
[Mono-winforms-list] [Patch] CausesValidation handling
Hey, The attached patch basically adds support for Control.CausesValidation, which means that in some scenarios the validation is postponed (when CausesValidation if false, basically). I'm concerned -specially- about the code readibility (it also includes the description of the algorithm in the patch). I mention this because I spent some time trying to understand this little documented algorithm (AFAIK) and want the code to be easily understandable. As test I used the very complete ones in https://bugzilla.novell.com/show_bug.cgi?id=457170 . One test is still failing, but that's due to the controls receiving focus/validation when closing (which needs to be fixed too, but it's a little different issue). Carlos. container-validation.patch Description: Binary data ___ Mono-winforms-list maillist - Mono-winforms-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-winforms-list
Re: [Mono-winforms-list] Find out if the application window is focused/active
Many thanks! :) Andreia Gaita wrote: On 2/8/09, Stifu st...@free.fr wrote: Long story short, I have the exact same problem as the one described here: http://bytes.com/groups/net-c/760728-application-focus I want to know if my application window is currently focused/active, but doing this.Focused doesn't return true if one the child controls of the application is focused. Off the top of my head, this.ActiveControl.Focused andreia gaita ___ Mono-winforms-list maillist - Mono-winforms-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-winforms-list -- View this message in context: http://www.nabble.com/Find-out-if-the-application-window-is-focused-active-tp21897934p22046271.html Sent from the Mono - WinForms mailing list archive at Nabble.com. ___ Mono-winforms-list maillist - Mono-winforms-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-winforms-list
Re: [Mono-dev] unixOdbc System.Data.Obdc and Output parameters
Hi, it seems that IBM iseries access odbc driver doesn't support named parameters: http://www.windows-tech.info/15/20db2419a40d67ff.php at least in a version. Could you please give me an example of named parameter? Many thanks, Best regards Daniel Morgan-3 wrote: ODBC can use named parameters. Does the IBM DB2 odbc driver support named parameters? If yes, then try using a named parameter instead of a question mark? --- On Fri, 2/13/09, Bartolomeo Nicolotti bnicolo...@siapcn.it wrote: From: Bartolomeo Nicolotti bnicolo...@siapcn.it Subject: Re: [Mono-dev] unixOdbc System.Data.Obdc and Output parameters To: mono-devel-list@lists.ximian.com Date: Friday, February 13, 2009, 1:16 PM With this code: string comandoAS2={CALL GIANLUCA.provacs( ? )}; OdbcCommand command2 = conn.CreateCommand(); command2.CommandText= comandoAS2; command2.CommandType=CommandType.StoredProcedure; OdbcParameter param1 = command2.Parameters.Add(@PAR1, OdbcType.Char, 2); param1.Direction= ParameterDirection.InputOutput; param1.Value=AA; System.Console.WriteLine(Eseguo:+comandoAS2); command2.ExecuteNonQuery(); and this OdbcCommand.Prepare: void Prepare() { System.Console.WriteLine(OdbcCommand.Prepare: begins!); ReAllocStatment (); OdbcReturn ret; System.Console.WriteLine(OdbcCommand.Prepare: Just before libodbc.SQLPrepare); ret = libodbc.SQLPrepare(hstmt, CommandText, CommandText.Length); System.Console.WriteLine(OdbcCommand.Prepare: Just after libodbc.SQLPrepare); if ((ret!=OdbcReturn.Success) (ret!=OdbcReturn.SuccessWithInfo)){ System.Console.WriteLine(OdbcCommand.Prepare: Throwing connection.CreateOdbcException); throw connection.CreateOdbcException (OdbcHandleType.Stmt, hstmt); } prepared = true; System.Console.WriteLine(OdbcCommand.Prepare: ends!); } when running I get: s...@lxpc54:~/dwn/src/test$ mono helloODBCCommand.exe Dunkel siapbn siapbn75 GIANLUCA Hello, Dunkel Eseguo:CALL QGPL.WBC022(9) ExecuteNonQuery ExecSQL.Parameters.Count:0 ExecSQL not prepared || Parameters.Count 0 Eseguo:{CALL GIANLUCA.provacs( ? )} ExecuteNonQuery ExecSQL.Parameters.Count:1 Just before Prepare OdbcCommand.Prepare: begins! OdbcCommand.Prepare: Just before libodbc.SQLPrepare OdbcCommand.Prepare: Just after libodbc.SQLPrepare OdbcCommand.Prepare: Throwing connection.CreateOdbcException System.Data.Odbc.OdbcException: ERROR [42S02] [unixODBC][IBM][iSeries Access ODBC Driver][DB2 UDB]SQL0204 - PROVACS in GIANLUCA di tipo *N non trovato. at System.Data.Odbc.OdbcCommand.Prepare () [0x0] at (wrapper remoting-invoke-with-check) System.Data.Odbc.OdbcCommand:Prepare () at System.Data.Odbc.OdbcCommand.ExecSQL (System.String sql) [0x0] at System.Data.Odbc.OdbcCommand.ExecuteNonQuery (Boolean freeHandle) [0x0] at System.Data.Odbc.OdbcCommand.ExecuteNonQuery () [0x0] at (wrapper remoting-invoke-with-check) System.Data.Odbc.OdbcCommand:ExecuteNonQuery () at helloODBC.Main (System.String[] args) [0x0] The message means that libodbc.SQLPrepare searches for a no parameters PROVACS stored procedure If I use string comandoAS2={CALL GIANLUCA.provacs( 'AA' )}; the program is executed correctly Daniel Morgan-3 wrote: Did you forget the curly braces surrounding the call? cmd.CommandText = {? = call usp_TestParameters (?, ?)}; You also have to manually add your own parameters. --- On Fri, 2/13/09, Bartolomeo Nicolotti bnicolo...@siapcn.it wrote: From: Bartolomeo Nicolotti bnicolo...@siapcn.it Subject: Re: [Mono-dev] unixOdbc System.Data.Obdc and Output parameters To: mono-devel-list@lists.ximian.com Date: Friday, February 13, 2009, 11:46 AM Hi, yes, I'm trying that way, adding some debugging System.Console.WriteLine in the OdbcCommand.cs and I got: s...@lxpc54:~/dwn/src/test$ mono helloODBCCommand.exe Hello, Dunkel Eseguo:CALL QGPL.WBC022(9) ExecuteNonQuery ExecSQL.Parameters.Count:0 ExecSQL not prepared || Parameters.Count 0 Eseguo:CALL GIANLUCA.PROVACS(?) ExecuteNonQuery ExecSQL.Parameters.Count:1 Just before Prepare OdbcCommand.Prepare: begins! OdbcCommand.Prepare: Just before libodbc.SQLPrepare OdbcCommand.Prepare: Just after libodbc.SQLPrepare OdbcCommand.Prepare: Throwing
[Mono-dev] Updating the ICSharpCode.SharpZipLib shipped with Mono
Hi, would it be possible to update the ICSharpCode.SharpZipLib Mono bundles? There's a lot of bugfixes ( http://wiki.sharpdevelop.net/Default.aspx?Page=SharpZipLib_ReleaseHistoryAspxAutoDetectCookieSupport=1 ) in 0.85.5.452 since version 0.84 which Mono provides, including Seek support which seems to be broken in 0.84. The current source download available from SharpZipLib compiles fine on Mono, and they have tests which could get included in Mono build as well (currently mono svn version has not tests for SharpZipLib). Regards, skolima ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Win32 sockets regression on trunk.
Hey. While upgrading our mono to get all the latest bugfixes, I'm running into the following, which looks like a win32 socket regression. When the program below is executed on mono trunk (r126917) it outputs: error on socket s error on socket s2 available data on socket s available data on socket s2 When run on a previous mono. (Mono2.0ish don't have the exact svn for this one, but around november 29, 2008), this program outputs: available data on socket s2 Which seems to me like the correct output. Reported as: https://bugzilla.novell.com/show_bug.cgi?id=476138 Here's the program. you need to make sure to actually have something listening on port 1234. using System; using System.Collections.Generic; using System.Net.Sockets; using System.Net; class Program { static void Main(string[] args) { var s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); var ep = new IPEndPoint(IPAddress.Parse(127.0.0.1), 5655); s.Blocking = false; s.Bind(ep); s.Listen(5); var s2 = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); s2.Bind(new IPEndPoint(IPAddress.Any, 0)); s2.Blocking = false; try { //You actally need to be running something on port 1234. s2.Connect(IPAddress.Parse(127.0.0.1), 1234); } catch (SocketException se) { // ignore blocking connect exception. shouldn't there be some other way to do this... if (se.ErrorCode != 10035) throw se; } var errorList = new ListSocket(); var readList = new ListSocket(); var writeList = new ListSocket(); readList.Add(s); readList.Add(s2); errorList.Add(s); errorList.Add(s2); Socket.Select(readList, null, errorList, 100); if (errorList.Contains(s)) Console.WriteLine(error on socket s); if (errorList.Contains(s2)) Console.WriteLine(error on socket s2); if (readList.Contains(s)) Console.WriteLine(available data on socket s); if (readList.Contains(s2)) Console.WriteLine(available data on socket s2); } } -- Lucas Meijer | GameDev Unity3D Consulting -- Blog: http://lucasmeijer.com/blog -- twitter: lucasmeijer ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Generic Variance
Can someone give this patch a look? ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Bugzilla Bug 475860, or, the wrong patch for the right job
Hi, I'm investigating http://bugzilla.novell.com/show_bug.cgi?id=475860; I've come up with a patch that addresses the issue, but I'm certain that it's the wrong way to solve the problem. Here's the patch: --- Index: ecore.cs === --- ecore.cs (revision 126868) +++ ecore.cs (working copy) @@ -4027,6 +4027,12 @@ Methods [j++] = m; } nmethods = j; + + if (nmethods == 0 candidate_overrides != null) { + foreach (MethodBase m in candidate_overrides) + Methods [j++] = m; + nmethods = j; + } } // @@ -4291,11 +4297,11 @@ // If the method is a virtual function, pick an override closer to the LHS type. // if (!IsBase best_candidate.IsVirtual) { - if (TypeManager.IsOverride (best_candidate)) +/* if (TypeManager.IsOverride (best_candidate)) throw new InternalErrorException ( - Should not happen. An 'override' method took part in overload resolution: + best_candidate); + Should not happen. An 'override' method took part in overload resolution: + best_candidate);*/ - if (candidate_overrides != null) { + if (!TypeManager.IsOverride (best_candidate) candidate_overrides != null) { Type[] gen_args = null; bool gen_override = false; if (TypeManager.IsGenericMethod (best_candidate)) --- The reason that the code listed in the Bugzilla bug fails to compile is that at the time of overload resolution, the method table for the family of Reference classes has not been completely initialized. Because of this, when TypeManager.TryGetBaseDefinition is called, it fails, and no candidates are added to the list of method overloads. The patch included above addresses this problem by allowing overrides to be added to the list of candidates if no other candidates have been found. While this allows the example code to compile and even produces correct results at runtime, I'm pretty sure that the most appropriate way to solve this problem would be to instead make sure that the method table is appropriately populated before we even get to this code (also, a comparison of the IL produced by gmcs and the IL produced by csc reveals that csc produces virtual calls to Reference::CompareTo(), while gmcs produces virtual calls to ReferencePoint::CompareTo() and ReferenceRange::CompareTo()). I'm afraid that fixing this bug will require a deeper knowledge of the compiler than I currently possess. Can anyone suggest a more appropriate way of solving this problem? The right fix is to change how MemberCache is populated in such scenarios, we have several similar bugs reported and they are all related to missing members/types in type's MemberCache. Marek ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Generic Variance
Hi Scott, your patch now is now pretty close to been ok, only a few remaining details are left. @@ -2128,6 +2129,36 @@ return (key-interface_id - element-interface_id); } +static gboolean +mono_class_is_variant_of (MonoClass *klass, MonoClass *vklass) { This function takes arguments in the opposite order of mono_class_is_assignable_from. I notices now while reviewing the details of the check. It's better keep the same ordering of (target, source) for type query like functions [1]. +if (container-type_params [i].flags GENERIC_PARAMETER_ATTRIBUTE_VARIANCE_MASK) { +if ((container-type_params [i].flags GENERIC_PARAMETER_ATTRIBUTE_CONTRAVARIANT) !mono_class_is_assignable_from (param_class, vparam_class)) +return FALSE; +if ((container-type_params [i].flags GENERIC_PARAMETER_ATTRIBUTE_COVARIANT) !mono_class_is_assignable_from (vparam_class, param_class)) +return FALSE; +} else if (param_class != vparam_class) +return FALSE; Good call to change from the broken named we had internally to something readable. +++ mono/mini/ChangeLog(working copy) @@ -1,3 +1,13 @@ +2009-02-13 Scott Peterson lunchtimem...@gmail.com + +Contributed under the MIT/X11 license. + +* mini-trampolines.cs: Use the +new mono_class_interface_offset_with_variance method to find interface +offsets. It's better to error on the side of been to verbose than the opposite when witting changelog entries. Please mention that this change is required because callsites of variant interfaces may do through a different interface than the one the target implements but due to variance it's valid. Oh, and you mention the wrong file name ;) +2009-02-13 Scott Peterson lunchtimem...@gmail.com + +This adds runtime generic variance support for reference types. +This patch is contributed under the MIT/X11 license. + +* class.c: Added mono_class_has_variant_generic_params which determins +if a generic class has a variant type parameter. mono_class_has_variant_generic_params is already there. Besides this minor issues, your patch looks great. Thanks for contributing to mono. Cheers, Rodrigo [1] It's easier to read F(A,B) a a test for the A =? B relation, where =? could be things like type assignable or generics variance assignable. On Fri, Feb 13, 2009 at 1:07 AM, Scott Peterson lunchtimem...@gmail.comwrote: This patch syncs with SVN. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Long term fix for load hook deadlocks
Hey, I've spent some time last week on this subject trying to see how this could be fixed. My initial idea was to remove the loader lock from all paths that lead to managed code been called. Thou it's possible, it would require some very complex changes to class loading to support System F recursive type definitions (F : TF) in a way to do safe publishing. It would buy us more trouble than anything else. Which turned my attention into fixing ther other locks instead. Besides the loader lock, only two other are held during complex interactions with the system: the domain and domain jit code hash locks. My idea is to change the locking rules to make the loader lock the bottom one, this would make it safe to call managed code while holding it and it's not much different than what currently happens. Both other locks, domain and domain jit code hash are used most of the time just to protect resources that are part of MonoDomain. The issue then would be to rework the part of the runtime that hold the loader lock together with the others. All code in metadata can be changed pretty easily as it acquires one after the other. The trouble is in mini.c where the interaction between those locks is pretty complex but changing it isn't that that hard. This approach would require us to split all the uses of the loader lock to protect resources such as the the uiid table as this is a task for simple locks and might have a bad interactions with other parts of the runtime. Comments? Cheers, Rodrigo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22039018.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Generic Variance
Latest patch. Thanks for the feedback. Index: mono/metadata/ChangeLog === --- mono/metadata/ChangeLog (revision 127036) +++ mono/metadata/ChangeLog (working copy) @@ -1,3 +1,16 @@ +2009-02-17 Scott Peterson lunchtimem...@gmail.com + + This adds runtime generic variance support for reference types. + This patch is contributed under the MIT/X11 license. + + * class.c: Added mono_class_is_variant_of which determins if the second + class is a legal variant of the first. Added + mono_class_interface_offset_with_variance to look for interfaces in a + variance-aware fashion. Modified mono_class_is_assignable_from to use + mono_class_is_variant_of. + + * class-internals.h: Added mono_class_interface_offset_with_variance. + 2009-02-16 Rodrigo Kumpera rkump...@novell.com * loader.c (method_from_memberref): Don't abort if the array Index: mono/metadata/class-internals.h === --- mono/metadata/class-internals.h (revision 127036) +++ mono/metadata/class-internals.h (working copy) @@ -407,6 +407,7 @@ #define MONO_CLASS_IMPLEMENTS_INTERFACE(k,uiid) (((uiid) = (k)-max_interface_id) ((k)-interface_bitmap [(uiid) 3] (1 ((uiid)7 int mono_class_interface_offset (MonoClass *klass, MonoClass *itf); +int mono_class_interface_offset_with_variance (MonoClass *klass, MonoClass *itf) MONO_INTERNAL; typedef gpointer MonoRuntimeGenericContext; Index: mono/metadata/class.c === --- mono/metadata/class.c (revision 127036) +++ mono/metadata/class.c (working copy) @@ -67,6 +67,7 @@ static void setup_generic_array_ifaces (MonoClass *class, MonoClass *iface, MonoMethod **methods, int pos); static MonoMethod* mono_class_get_virtual_methods (MonoClass* klass, gpointer *iter); +static gboolean mono_class_has_variant_generic_params (MonoClass *klass); void (*mono_debugger_class_init_func) (MonoClass *klass) = NULL; void (*mono_debugger_class_loaded_methods_func) (MonoClass *klass) = NULL; @@ -2124,6 +2125,36 @@ return (key-interface_id - element-interface_id); } +static gboolean +mono_class_is_variant_of (MonoClass *klass, MonoClass *oklass) { + int i; + MonoClass *generic = klass-generic_class-container_class; + MonoClass *ogeneric = oklass-generic_class-container_class; + MonoGenericContainer *container = ogeneric-generic_container; + + if (generic != vgeneric) + return FALSE; + + for (i = 0; i container-type_argc; i++) { + MonoClass *param_class = mono_class_from_mono_type (klass-generic_class-context.class_inst-type_argv [i]); + MonoClass *oparam_class = mono_class_from_mono_type (oklass-generic_class-context.class_inst-type_argv [i]); + + // FIXME this is incorrect + if (param_class-valuetype || oparam_class-valuetype) + return FALSE; + + if (container-type_params [i].flags GENERIC_PARAMETER_ATTRIBUTE_VARIANCE_MASK) { + if ((container-type_params [i].flags GENERIC_PARAMETER_ATTRIBUTE_CONTRAVARIANT) !mono_class_is_assignable_from (param_class, oparam_class)) +return FALSE; + if ((container-type_params [i].flags GENERIC_PARAMETER_ATTRIBUTE_COVARIANT) !mono_class_is_assignable_from (oparam_class, param_class)) +return FALSE; + } else if (param_class != oparam_class) + return FALSE; + } + + return TRUE; +} + int mono_class_interface_offset (MonoClass *klass, MonoClass *itf) { MonoClass **result = bsearch ( @@ -2139,6 +2170,21 @@ } } +int +mono_class_interface_offset_with_variance (MonoClass *klass, MonoClass *itf) { + int i = mono_class_interface_offset (klass, itf); + if (i = 0) { + return i; + } else if (mono_class_has_variant_generic_params (itf)) { + for (i = 0; i klass-interface_offsets_count; i++) { + if (mono_class_is_variant_of (klass-interfaces_packed[i], itf)) { +return klass-interface_offsets_packed [i]; + } + } + } + return -1; +} + static void print_implemented_interfaces (MonoClass *klass) { GPtrArray *ifaces = NULL; @@ -5948,38 +5994,8 @@ if ((container_class2-interfaces_packed [i] == container_class1) || (container_class2-interfaces_packed [i]-generic_class (container_class2-interfaces_packed [i]-generic_class-container_class == container_class1))) match = TRUE; -if (match) { - MonoGenericContainer *container; - - container = klass-generic_class-container_class-generic_container; - - match = TRUE; - for (i = 0; i container-type_argc; ++i) { - MonoClass *param1_class = mono_class_from_mono_type (klass-generic_class-context.class_inst-type_argv [i]); - MonoClass *param2_class = mono_class_from_mono_type (oklass-generic_class-context.class_inst-type_argv [i]); - - if (param1_class-valuetype != param2_class-valuetype) { - match = FALSE; - break; - } - /* - * The _VARIANT and _COVARIANT constants should read _COVARIANT and - * _CONTRAVARIANT, but they are in a public
[Mono-dev] ASP.NET MVC
I see that the MVC implementation is planned for june. I'd like to know if there is someone responsible for this and if any progress is made. Thank you ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] correction for Compiling Mono on WIn dows' page.
Miguel de Icaza mig...@novell.com wrote on 16.2.2009 5:14:03: We now have a Visual Studio script that will build the runtime, and hopefully we will soon have msbuild scripts for the rest of the Mono class libraries and we should be able to have a fully native build setup that does not require Cygwin in the future. I bow to those who implemented this. Regards, Miha -- It's time to get rid of your current e-mail client ... ... and start using si.Mail. It's small free. ( http://www.simail.si/ ) ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] correction for Compiling Mono on WIndows' page.
Hi Miguel, Good to hear about the Visual Studio script. Where can we see instructions on how to use it? --- Adar Wesley On Mon, Feb 16, 2009 at 6:14 AM, Miguel de Icaza mig...@novell.com wrote: Aha. The dot at the beginning off the line threw me off. Since I'm used to run shell scripts just like /tmp/whatever.sh. I'm guessing this will happen to other users as well, especially since the how to make this work on windows guide is likely to be read by people not intimately fermiliar with linux customs. I updated the Wiki page with this information. We now have a Visual Studio script that will build the runtime, and hopefully we will soon have msbuild scripts for the rest of the Mono class libraries and we should be able to have a fully native build setup that does not require Cygwin in the future. Miguel. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Updating the ICSharpCode.SharpZipLib shipped with Mono
On Mon, 16 Feb 2009 12:48:33 +0100 Leszek Ciesielski skol...@gmail.com wrote: Hi, would it be possible to update the ICSharpCode.SharpZipLib Mono bundles? There's a lot of bugfixes ( http://wiki.sharpdevelop.net/Default.aspx?Page=SharpZipLib_ReleaseHistoryAspxAutoDetectCookieSupport=1 ) in 0.85.5.452 since version 0.84 which Mono provides, including Seek support which seems to be broken in 0.84. The current source download available from SharpZipLib compiles fine on Mono, and they have tests which could get included in Mono build as well (currently mono svn version has not tests for SharpZipLib). Is that version ABI compatible? ilcontrast can show ABI breakages... Regards, skolima -- Regards, Mirco 'meebey' Bauer PGP-Key ID: 0xEEF946C8 FOSS Developermee...@meebey.net http://www.meebey.net/ PEAR Developermee...@php.net http://pear.php.net/ Debian Developer mee...@debian.org http://www.debian.org/ ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] correction for Compiling Mono on WIndows' page.
There are some instructions here: http://www.mono-project.com/Compiling_Mono_VSNET You should basically be able to open the .sln file in Visual Studio 2005 and hit build. If you build the Debug/Release targets you'll need your glib dependencies correctly setup (by using the described MONO_DEPENDENCIES_PREFIX evironment variable). If you build the *_eglib targets, you should be able to just hit build. This uses the not quite supported eglib library. This has to be used for a Win64 build (as there is no glib on Win64 easily available). You should then be able to use the built runtime with corresponding class libraries. They need to be in sync. So, use cygwin to build them, get runtime code that corresponds to a released mono and use the class libs from the install, or build class libs on Linux (and copy or access via a samba share). The last option is what I (and many others do). Thanks, Jonathan 2009/2/16 Adar Wesley adar.wes...@gmail.com Hi Miguel, Good to hear about the Visual Studio script. Where can we see instructions on how to use it? --- Adar Wesley On Mon, Feb 16, 2009 at 6:14 AM, Miguel de Icaza mig...@novell.comwrote: Aha. The dot at the beginning off the line threw me off. Since I'm used to run shell scripts just like /tmp/whatever.sh. I'm guessing this will happen to other users as well, especially since the how to make this work on windows guide is likely to be read by people not intimately fermiliar with linux customs. I updated the Wiki page with this information. We now have a Visual Studio script that will build the runtime, and hopefully we will soon have msbuild scripts for the rest of the Mono class libraries and we should be able to have a fully native build setup that does not require Cygwin in the future. Miguel. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] bug not quite squashed
Hi, a couple of hours ago bug https://bugzilla.novell.com/show_bug.cgi?id=475823got fixed. However a very similar scenario still fails. Submitted here: https://bugzilla.novell.com/show_bug.cgi?id=476295 Regards, Bas using System; using System.Linq.Expressions; public class Program { static void Main() { ExpressionActionIHelper e = (helper = helper.DoIt(new Foo())); var mce = e.Body as MethodCallExpression; var et = mce.Arguments[0].NodeType; if (et == ExpressionType.Convert) Console.WriteLine(Hi from gmcs); else Console.WriteLine(Hi from csc); } } public class FooBase { } public class Foo : FooBase { } public interface IHelper { void DoIt(FooBase foo); } ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] gmcs and The Future
Hi, Anyway, am not completely against the idea, I already wrote about how I'd like to have a more extensible mcs, but in the current state of affairs, again, I'd very cautious. Some time ago, I had the idea of an extensible compiler. One with kind of a plugin system. Or even better, a keyword keyword that allows you to define new keywords by providing classes that implement certain Interfaces that allow the compiler to parse and emit your new language feature. I already have a name for that language - it would be Sugar (lot's of syntactic sugar included ;-) How do you think about that idea? (I wish I had more time for such stuff :-/ ) Stefan ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins-sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Try updating to mono HEAD. SVN versions sometimes have bugs like that, but SVN HEAD works for me when using AOT on ARM. Zoltan On Tue, Feb 17, 2009 at 2:45 AM, mobbe peter.mob...@gmail.com wrote: Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins-sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Will try to do that... Regarding the files in mono/arch/arm... Do I have to regenerate these files or can I use the h-files that are present? Since I am compiling on a Mac OS X I would need to fake being on an ARM if I need to run anything in the arch folder... On Feb 16, 2009, at 8:01 PM, Zoltan Varga wrote: Try updating to mono HEAD. SVN versions sometimes have bugs like that, but SVN HEAD works for me when using AOT on ARM. Zoltan On Tue, Feb 17, 2009 at 2:45 AM, mobbe peter.mob...@gmail.com wrote: Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins- sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Svn head was broken for a big part of the day during a brain dead commit I did. Please try again. On Mon, Feb 16, 2009 at 10:45 PM, mobbe peter.mob...@gmail.com wrote: Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins-sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Hi, mono on iphone is not really a supported configuration right now, it works for some people, but expect to run into lots of problems. Cross compiling mono for arm is especially fraught with problems, better to compile on the device itself. Zoltan On Tue, Feb 17, 2009 at 3:12 AM, Peter Moberg peter.mob...@gmail.com wrote: Will try to do that... Regarding the files in mono/arch/arm... Do I have to regenerate these files or can I use the h-files that are present? Since I am compiling on a Mac OS X I would need to fake being on an ARM if I need to run anything in the arch folder... On Feb 16, 2009, at 8:01 PM, Zoltan Varga wrote: Try updating to mono HEAD. SVN versions sometimes have bugs like that, but SVN HEAD works for me when using AOT on ARM. Zoltan On Tue, Feb 17, 2009 at 2:45 AM, mobbe peter.mob...@gmail.com wrote: Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins-sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Hello, mono on iphone is not really a supported configuration right now, it works for some people, Additionally, due to the way applications are distributed on the iPhone (end-user has no choice to relink the application with newer Mono versions that the LGPL requires) you would have to obtain a commercial license from Novell for Mono. Alternatively, you can use Unity3d which is a licensor of Mono. Miguel. but expect to run into lots of problems. Cross compiling mono for arm is especially fraught with problems, better to compile on the device itself. Zoltan On Tue, Feb 17, 2009 at 3:12 AM, Peter Moberg peter.mob...@gmail.com wrote: Will try to do that... Regarding the files in mono/arch/arm... Do I have to regenerate these files or can I use the h-files that are present? Since I am compiling on a Mac OS X I would need to fake being on an ARM if I need to run anything in the arch folder... On Feb 16, 2009, at 8:01 PM, Zoltan Varga wrote: Try updating to mono HEAD. SVN versions sometimes have bugs like that, but SVN HEAD works for me when using AOT on ARM. Zoltan On Tue, Feb 17, 2009 at 2:45 AM, mobbe peter.mob...@gmail.com wrote: Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins- sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] On what platform|cpu-arch|mono-version does full AOT actually work?
Looks like you are right regarding the fact that I will be running into a lot of problems... Going to sound like a broken record...but I did get latest from SVN... compiled everything for the iPhone ARM...Successfully started up Mono on the iPhone device...started to compile mscorlib (profile 1 as well as profile 2) in AOT mode.BAM!...same assert as mentioned below triggered. Since I am able to run Mono on the iPhone and I am performing the AOT compilation on the iPhone with its ARM processor I am bit surprised that it still doesn't work... the only thing I can think of is that there are a few files that are generated before compilation... e.g. cpu-arm.h and a few others in the arch folder..and that they are not correct on my side... if anyone have those files and are able to run on the ARM processor I would love to take a look at them to compare On Feb 16, 2009, at 8:19 PM, Zoltan Varga wrote: Hi, mono on iphone is not really a supported configuration right now, it works for some people, but expect to run into lots of problems. Cross compiling mono for arm is especially fraught with problems, better to compile on the device itself. Zoltan On Tue, Feb 17, 2009 at 3:12 AM, Peter Moberg peter.mob...@gmail.com wrote: Will try to do that... Regarding the files in mono/arch/arm... Do I have to regenerate these files or can I use the h-files that are present? Since I am compiling on a Mac OS X I would need to fake being on an ARM if I need to run anything in the arch folder... On Feb 16, 2009, at 8:01 PM, Zoltan Varga wrote: Try updating to mono HEAD. SVN versions sometimes have bugs like that, but SVN HEAD works for me when using AOT on ARM. Zoltan On Tue, Feb 17, 2009 at 2:45 AM, mobbe peter.mob...@gmail.com wrote: Nope...same results with a mscorlib.dll from the 1.0 folder. It gets stuck in the mono_local_regalloc method on the assert checking for ins- sreg != -1... Exactly the same message as before. It is trying to compile the Equals method The inst op code is 633 and both sreg1 and sreg2 is -1.. . I am running the system with build 125709 and compiling the mscorlib.dll from the 1.0 folder... mobbe wrote: I am indeed trying to compile a 2.0 version of the mscorlib. I will grab the 1.0 version instead and see if I have better luck with that one...if I can get that to work then I will migrate to use the code from SVN and try with the 2.0 profile. Thanks, Zoltan Varga wrote: Hi, You might be trying to use full-aot with the 2.0 profile. Currently, only the 1.0 mscorlib can be full-aot-ed, altough 2.0 should work when using mono SVN. Zoltan On Mon, Feb 16, 2009 at 3:48 PM, mobbe peter.mob...@gmail.com wrote: I compiled the Mono framework (the unmanaged pieces) so that I could run it on my iPhone. I was successful in doing that and thought that I would try to do AOT on the iPhone...transfer the temporary asm output to my Mac to assemble and link it and from there keep going... however when performing the AOT compilation of mscorlib.dll Mono hit another assert... something with inst-sreg1 being negative 1 (-1) (Don't remember right now what funtion it stopped in..will have to supply that information when I get to my Mac later tonight). If I commented out the assert it went on a bit further but stopped on a another assert when trying to emit the op-code saying that it was expecting 0 bytes for the op-code ld_loadmembase but got 4... Anyone out there have an ideas of where I should be looking next in order to try to solve this? It seems like the instruction set it is using for ARM doesn't match the source codes assumptions. I am sure that I am doing something wrong but don't know where to begin to look for the issue. Maybe someone out there has a cpu-arm.h file that they know works that I can compare with mine? Are there any other generated files regarding the instruction set that I should double check? Thanks for your help in advance. Hi, full-aot currently only works on amd64/arm. Zoltan -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22038601.html Sent from the Mono - Dev mailing list archive at Nabble.com. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list -- View this message in context: http://www.nabble.com/On-what-platform%7Ccpu-arch%7Cmono-version-does-full-AOT-actually-work--tp21988583p22049003.html Sent from the Mono - Dev mailing list
[Mono-list] Regex Exception - Discrepancy between .NET and Mono
Dear All, The simple class below throws an exception, but under .NET an ArgumentNullException is thrown, whereas under Mono a NullReferenceException is thrown. using System.Text.RegularExpressions; public class Program { public static void Main(string[] args) { var r = new Regex(); r.Match(null); } } I spotted this because the stack trace contained line references that weren't on my machine: Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object at System.Text.RegularExpressions.Regex.Match (System.String input, Int32 startat) [0x0] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.2\mcs\build\common\Consts.cs:1 at System.Text.RegularExpressions.Regex.Match (System.String input) [0x0] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.2\mcs\class\System\System.Text.RegularExpressions\Regex.cs:337 at Program.Main (System.String[] args) [0x0] For reference the .NET stack trace is below: Unhandled Exception: System.ArgumentNullException: Value cannot be null. Parameter name: input at System.Text.RegularExpressions.Regex.Match(String input) at Program.Main(String[] args) Should I file a bug about this? Or do we not really! Thanks, Matt ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list
Re: [Mono-list] StoredProcedure Output Parameters System.Data.Odbc
Hi, the problem seems to be that Mono calls SQLPrepare before binding parameters Bartolomeo Nicolotti wrote: As you can see from here: http://www.itjungle.com/mgo/mgo120503-story01.html the code I've written in mono should be ok. The link above is an example in visual basic .net on windows, I'm using mono on linux. Ok, but the log shows a error coming back from the driver where one should not occur, so I suggest the problem lies with the driver. All unixODBC is doing at this point is passing the call from the app to the driver. Try executing the same call in isql. {CALL GIANLUCA.Provacs( ? )} it should fail to SQLExecute it, but if the driver is working as expected, the SQLPrepare should succeed. It may be that your DB2 driver requires the parameters to a SQLPrepare on a stored procedure to be bound before calling prepare, but if it does, and the mono code only binds after calling SQLPrepare then all you can do is change the code in mono, or use a different driver. http://www.nabble.com/inputOutput-parameter-problem-in-calling-stored-Procedure-td22002537.html Bartolomeo Nicolotti wrote: Hi, I'm trying unixodbc with System.Data.ODBC to access DB2 for iseries I can do select, see this file http://www.nabble.com/file/p21997635/helloODBC.cs helloODBC.cs , but I've some problems with out parameters of stored procedueres. With this file http://www.nabble.com/file/p21997635/helloODBCCommand.cs helloODBCCommand.cs I get: Hello, Dunkel Eseguo:CALL QGPL.WBC022(9) Eseguo:CALL GIANLUCA.PROVACS System.Data.Odbc.OdbcException: ERROR [42000] [unixODBC][IBM][iSeries Access ODBC Driver][DB2 UDB]SQL0104 - Token GIANLUCA non valido. Token validi: ( END GET SET CALL DROP FREE HOLD LOCK OPEN WITH ALTER. It seems that setting the CommandType to StoredProcedure has no effect, as one can also see from the source of mono (I've installed mono from source) /home/siap/dwn/src/mono/mono-2.2/mcs/class/System.Data/System.Data.Odbc/OdbcCommand the ExecuteNonQuery member function call ExecSQL that private int ExecuteNonQuery (bool freeHandle) { ... ExecSQL(CommandText); ExecSQL is: private void ExecSQL (string sql) { OdbcReturn ret; if (! prepared Parameters.Count = 0) { ReAllocStatment (); ret = libodbc.SQLExecDirect (hstmt, sql, libodbc.SQL_NTS); if ((ret != OdbcReturn.Success) (ret != OdbcReturn.SuccessWithInfo) (ret != OdbcReturn.NoData)) throw connection.CreateOdbcException (OdbcHandleType.Stmt, hstmt); return; } if (!prepared) Prepare(); BindParameters (); ret = libodbc.SQLExecute (hstmt); if (ret != OdbcReturn.Success ret != OdbcReturn.SuccessWithInfo) throw connection.CreateOdbcException (OdbcHandleType.Stmt, hstmt); } Should I use prepared to BindParameters? How can I get the output parameter of a Stored Procedure? Many thanks Best regards -- View this message in context: http://www.nabble.com/StoredProcedure-Output-Parameters-System.Data.Odbc-tp21997635p22035240.html Sent from the Mono - General mailing list archive at Nabble.com. ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list
Re: [Mono-list] Regex Exception - Discrepancy between .NET and Mono
Hello. I guess you can file a bug, just for the sake of uniform behavior. Although it probably won't cause trouble to anyone (at least I can't imagine the scenario), fixing it should be ridiculously easy. 2009/2/16 Matt Lee thatism...@gmail.com: Dear All, The simple class below throws an exception, but under .NET an ArgumentNullException is thrown, whereas under Mono a NullReferenceException is thrown. using System.Text.RegularExpressions; public class Program { public static void Main(string[] args) { var r = new Regex(); r.Match(null); } } I spotted this because the stack trace contained line references that weren't on my machine: Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object at System.Text.RegularExpressions.Regex.Match (System.String input, Int32 startat) [0x0] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.2\mcs\build\common\Consts.cs:1 at System.Text.RegularExpressions.Regex.Match (System.String input) [0x0] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.2\mcs\class\System\System.Text.RegularExpressions\Regex.cs:337 at Program.Main (System.String[] args) [0x0] For reference the .NET stack trace is below: Unhandled Exception: System.ArgumentNullException: Value cannot be null. Parameter name: input at System.Text.RegularExpressions.Regex.Match(String input) at Program.Main(String[] args) Should I file a bug about this? Or do we not really! Thanks, Matt ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list
Re: [Mono-list] More .NET and mono floating point inconsistencies
Kornel, I'll try to review your patch on the bugzilla issue this week. Sorry for the delay. Cheers, Rodrigo On Sun, Feb 15, 2009 at 10:54 AM, Kornél Pál kornel...@gmail.com wrote: Hi, Thanks for the test cases, I'll invetigate these as well and try to fix them. The best way to get bugs fixed is to produce test cases and report them in buzilla. You can help more if you are able to provide a patch to fix the bugs. Note that for some reasons Novell guys seem to ignore this bug mostly because they have other things to do and their approval is required for these changes. Could you please describe your scenario (application name, purpose, etc. if they are public) where you need these floating point roundings and describe why these bugs are critical for you. Providing some description may raise component owners' attention. Kornél ddambro wrote: I previously posted about some differences I noticed between the floating point math in .NET and mono http://www.nabble.com/Mono-and-.Net-Floating-Point-Inconsistencies-to21428695ef1367.html here . The bug report can be found https://bugzilla.novell.com/show_bug.cgi?id=467201 here . The patch provided (Thank you!) fixes several issues I was encountering, but unfortunately it led me to discover a couple more. The following two code samples were tested x86 machines using Linux mono 2.2 with the patch found in the bug report, a clean Windows mono 2.0.1, and the latest version of .NET targeting 3.0 framework and x86. --- 1. using System; using System.Runtime.CompilerServices; class Testing { [MethodImpl(MethodImplOptions.NoInlining)] public static void Main() { float f1=200; float distance=Distance(300, 500, 387.5f, 362.5f); float dist = 1 - (distance / f1); float distSqud = dist * dist; Console.WriteLine(distSqud.ToString(R)); foreach (byte b in BitConverter.GetBytes(distSqud)) Console.WriteLine(b); } public static float Distance(float x1, float y1, float x2, float y2) { float xDist = x1 - x2; float yDist = y1 - y2; float dist = (float)Math.Sqrt(xDist * xDist + yDist * yDist); return dist; } On .NET this code produces: 0.0342619047 54 86 12 61 and on mono it produces: 0.03426191 55 86 12 61 --- 2. using System; using System.Runtime.CompilerServices; class Testing { [MethodImpl(MethodImplOptions.NoInlining)] public static void Main() { float distance = Distance(616.161255f, 391.2928f, 550.8382f, 131.006973f); Console.WriteLine(distance.ToString(R)); foreach (byte b in BitConverter.GetBytes(distance)) Console.WriteLine(b); } public static float Distance(float x1, float y1, float x2, float y2) { float xDist = x1 - x2; float yDist = y1 - y2; float dist = (float)Math.Sqrt(xDist * xDist + yDist * yDist); Console.WriteLine(dist.ToString(R)); foreach (byte b in BitConverter.GetBytes(dist)) Console.WriteLine(b); return dist; } } On .NET this code produces: 268.3576 198 45 134 67 268.3576 198 45 134 67 and on mono it produces: 268.357635 199 45 134 67 268.357635 199 45 134 67 --- These seem to be very similar to the issues I was encountering before, but they are not fixed by the patch. What is the best way to resolve these inconsistencies? Thanks, David ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list
[Mono-list] Console.ReadKey() = no spezial chars on Linux
Hi, I programmed a console application in VB .NET with VS08 which uses cmd-InputBuffer to display an history of old commands in my application. After porting this application to Mono (Debian, v1.9.1) my application has no history feature (my shell is bash). Then I decided to uses Console.ReadKey() instead of ReadLine(). I usesd the Microsoft MSDN example to display the KeyChars, KeyCodes and Modifiers [...] Console.TreatControlCAsInput = True Console.WriteLine(m1) Do Console.WriteLine(m2) sb.Length = 0 cki = Console.ReadKey(True) sb.Append(m3) If cki.Modifiers 0 Then If (cki.Modifiers And ConsoleModifiers.Alt) 0 Then sb.Append(ALT+) End If If (cki.Modifiers And ConsoleModifiers.Shift) 0 Then sb.Append(SHIFT+) End If If (cki.Modifiers And ConsoleModifiers.Control) 0 Then sb.Append(CTL+) End If End If sb.Append(cki.Key.ToString()) sb.AppendFormat(m4, cki.KeyChar, Convert.ToInt32(cki.KeyChar)) sb.AppendLine().AppendLine() Console.WriteLine(sb.ToString()) Loop While cki.Key ConsoleKey.Escape My ConsoleExtended Class has a mask with all allowed keys assoziated with an delegate e.g. AddCharToBuffer for normal alphanumeric-chars. Compiled on Windows this application does what it should do ^^ After porting it to Mono some ConsoleKeyInfo-Instances have an abnormal value ... Enter returns ConsoleKey.Enter which has ASCII Char 13 on Windows, on Mono it has 10 (I know the differnet behavior of \n und \r\n ) Home returns on Windows ConsoleKey.Home, on Mono ConsoleKey.Esc with ASCII Char 27 (also: End, Delete, ) Backspace returns on Windows ConsoleKey.Backspace ASCII Char 8, on Mono ConsoleKey.Backspace with ASCII Char 0 After some experiments I noticed that Console.In has differnet Encodings. Then I changed encoding to UTF-8, but nothing happend. Why is there a differnet behavior? What ConsoleKeyInfo-Values are used in Mono? How to use spezial Keys like Home, End, Delete, Backspace, ... Here are some code fragments: -- Public Sub New() With OutputBufferSize .Width = Console.BufferWidth .Height = Console.BufferHeight End With Dim DefaultMask As New Dictionary(Of ConsoleKeyInfo, InputAction) KeyMasks.Add(DefaultMaskName, DefaultMask) CurrentKeyMask = DefaultMask AddKeyToMask(rtn, DefaultMaskName, Function() False) AddKeyToMask(esc, DefaultMaskName, AddressOf ClearInputBuffer) AddKeyToMask(del, DefaultMaskName, AddressOf DeleteAtInputBufferPos) AddKeyToMask(bsp, DefaultMaskName, AddressOf DeleteBeforeInputBufferPos) AddKeyToMask(home, DefaultMaskName, AddressOf InputBufferPosHome) AddKeyToMask(end, DefaultMaskName, AddressOf InputBufferPosEnd) AddKeyToMask(left, DefaultMaskName, AddressOf InputBufferPosLeft) AddKeyToMask(right, DefaultMaskName, AddressOf InputBufferPosRight) AddKeyToMask(up, DefaultMaskName, AddressOf HistoryBack) AddKeyToMask(down, DefaultMaskName, AddressOf HistoryNext) AllowAlphaNumForMask(DefaultMaskName) AllowSpezialCharsForMask(DefaultMaskName) End Sub Public Sub AddKeyToMask(ByVal KeyName As String, ByVal MaskName As String, ByVal KeyAction As Action) If KeyMasks.ContainsKey(MaskName) Then Select Case KeyName Case a KeyMasks(MaskName).Add(New ConsoleKeyInfo(ac, ConsoleKey.A, False, False, False), New InputAction With {.DisplayChar = a, .BufferChar = a, .Action = KeyAction}) Case b KeyMasks(MaskName).Add(New ConsoleKeyInfo(bc, ConsoleKey.B, False, False, False), New InputAction With {.DisplayChar = b, .BufferChar = b, .Action = KeyAction}) Case c KeyMasks(MaskName).Add(New ConsoleKeyInfo(cc, ConsoleKey.C, False, False, False), New InputAction With {.DisplayChar = c, .BufferChar = c, .Action = KeyAction}) [...] Case rtn KeyMasks(MaskName).Add(New ConsoleKeyInfo(Convert.ToChar(13), ConsoleKey.Enter, False, False, False), New InputAction With {.DisplayChar = , .BufferChar = , .Action = KeyAction}) Case esc KeyMasks(MaskName).Add(New ConsoleKeyInfo(Convert.ToChar(27), ConsoleKey.Escape, False, False, False), New InputAction With {.DisplayChar = , .BufferChar = ,
[Mono-list] MPC8313 and Mono
Hi, Has anyone done any development with Mono on the Freescale MPC8313 embbeded board or anything related? How would I go about building Mono 2.2 for this board running a minimal version of linux with no gcc? I'm quite a noob to this. A Windows developer thrown off the deep end. Thanks, Chris ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list
[Mono-list] inetd launched process
Does mono have an ability to recover a socket-like object from stdin if it has been started from inetd, in the way that Java does with System.inheritedChannel()? James ---BeginMessage--- Hello jman1 The following member became live on the site at 21:28 on 16/02/2009 Nickname: horny hot lisa Porn star, Glamour model, horny horny girl. http://www.adultwork.com/ViewProfile.asp?UserID=686069 Regards The AdultWork.com Team ---End Message--- ___ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list