Dennis Hayes [Mon, 5 Apr 2004 07:15:34 +0000 (07:15 -0000)]
added to changelog
svn path=/trunk/mcs/; revision=25025
Dennis Hayes [Mon, 5 Apr 2004 07:10:24 +0000 (07:10 -0000)]
Complete. Includes code from both Mono and Mainsoft.
* BooleanType.cs
* CharArrayType.cs
* CharType.cs
* IncompleteInitialization.cs
* LongType.cs
* OptionCompareAttribute.cs
* OptionTextAttribute.cs
* ShortType.cs
* DateType.cs
Close. Unconverted java code from Mainsoft in comments included inthe code.
* IntegerType.cs
* ByteType.cs
* DecmialType.cs
* SingleType.cs
* DoubleType.cs
Work in progress
* ExceptionUtils.cs
svn path=/trunk/mcs/; revision=25024
Miguel de Icaza [Mon, 5 Apr 2004 04:07:58 +0000 (04:07 -0000)]
Parameter capturing test
svn path=/trunk/mcs/; revision=25019
Atsushi Eno [Mon, 5 Apr 2004 03:35:08 +0000 (03:35 -0000)]
2004-04-05 Atsushi Enomoto <atsushi@ximian.com>
* XmlAttribute.cs : get_Value should return all children's value.
* XmlCharacterData.cs : DOM's substring does not raise an error when
startIndex + count exceeds the length of Data.
* XmlNamedNodeMap.cs : SetNamedItem() returns the new child when it
does not replace another named item.
* XmlElement.cs : with related to the XmlNamedNodeMap change,
SetAttributeNode() is required to fix as to return null when it does
not replace existing attribute.
svn path=/trunk/mcs/; revision=25018
Miguel de Icaza [Mon, 5 Apr 2004 02:15:48 +0000 (02:15 -0000)]
2004-04-04 Miguel de Icaza <miguel@ximian.com>
* security.c (GetUserName): Make it work on MacOS X
svn path=/trunk/mono/; revision=25017
Martin Baulig [Mon, 5 Apr 2004 00:57:27 +0000 (00:57 -0000)]
When constructing the new classes MemberName, include the parent's type
parameters in the TypeName.
svn path=/trunk/mcs/; revision=25016
Martin Baulig [Sun, 4 Apr 2004 21:29:41 +0000 (21:29 -0000)]
Compute the number of type parameters immediately when creating the DeclSpace.
svn path=/trunk/mcs/; revision=25015
Anirban Bhattacharjee [Sun, 4 Apr 2004 11:18:20 +0000 (11:18 -0000)]
Few more new test cases and some modified test cases
svn path=/trunk/mcs/; revision=25011
Gonzalo Paniagua Javier [Sun, 4 Apr 2004 10:31:40 +0000 (10:31 -0000)]
2004-04-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* mini-x86.h: SA_STACK defined as SA_ONSTACK. Fixed build under NetBSD.
svn path=/trunk/mono/; revision=25010
Anirban Bhattacharjee [Sun, 4 Apr 2004 10:11:13 +0000 (10:11 -0000)]
* delegate.cs: changed default access modifier
* enum.cs: changed default access modifier
* interface.cs: changed default access modifier
* modifiers.cs: extension of bug fixed for getting NotOverridable modifier working for methods
svn path=/trunk/mcs/; revision=25009
Anirban Bhattacharjee [Sun, 4 Apr 2004 10:00:54 +0000 (10:00 -0000)]
* class.cs: Changed exception messages and their numbers to align better with VB
Changed default access modifier of method to Public
Bug fixed to get NotOverridable modifier working
* decl.cs: Changed exception messages and numbers
svn path=/trunk/mcs/; revision=25008
Gonzalo Paniagua Javier [Sun, 4 Apr 2004 08:38:46 +0000 (08:38 -0000)]
2004-04-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* WebConfigurationSettings.cs: "/" is the virtual root directory of
the application. This fixes a bug reported by Vlad that caused
configuration error because files were read twice when there's an
application different from "/" defined.
svn path=/trunk/mcs/; revision=25007
Duncan Mak [Sun, 4 Apr 2004 00:55:09 +0000 (00:55 -0000)]
(PrintTypes): show the number of types in the assembly as well.
svn path=/trunk/mcs/; revision=25002
Martin Baulig [Sat, 3 Apr 2004 22:56:23 +0000 (22:56 -0000)]
2004-04-03 Martin Baulig <martin@ximian.com>
* decl.cs (MemberCore.ctor): Take a MemberName instead of a sting.
(MemberCore.MemberName): Moved here from MemberBase.
(DeclSpace.SetParameterInfo): Just take the constraints as an
ArrayList; we already have the type parameters in our
`MemberName'; also do the CS0080 reporting here.
* cs-parser.jay (struct_declaration): Use `member_name' instead of
`IDENTIFIER opt_type_parameter_list'; when constructing our
`MemberName', it'll already include our type parameters.
(class_declaration, interface_declaration): Likewise.
(delegate_declaration): Likewise.
(MakeName): Take a MemberName and return a MemberName.
The following two changes are required to avoid shift/reduce conflicts:
(member_name): Don't include a TypeName anymore; ie. this is now
just 'IDENTIFIER opt_type_parameter_list'.
(property_declaration, event_declaration): Use a
`namespace_or_type_name' instead of a `member_name'.
svn path=/trunk/mcs/; revision=25001
Martin Baulig [Sat, 3 Apr 2004 20:48:49 +0000 (20:48 -0000)]
2004-04-03 Martin Baulig <martin@ximian.com>
* decl.cs (MemberName): Renamed to `TypeName' and created a new
`MemberName' class.
(TypeName): Formerly known as MemberName.
* namespace.cs (NamespaceEntry.UsingAlias): Take a `TypeName'
instead of a `MemberName'.
* cs-parser.jay (namespace_or_type_name): Create a TypeName.
(member_name): New rule; create a MemberName.
svn path=/trunk/mcs/; revision=24999
Jackson Harper [Sat, 3 Apr 2004 18:14:25 +0000 (18:14 -0000)]
* CodeGen.cs: cast
svn path=/trunk/mcs/; revision=24998
Jackson Harper [Sat, 3 Apr 2004 18:13:12 +0000 (18:13 -0000)]
* ILParser.jay: Dont use hash alg enum its too restrictive
svn path=/trunk/mcs/; revision=24997
Miguel de Icaza [Sat, 3 Apr 2004 17:19:03 +0000 (17:19 -0000)]
Patch from Joerg Rosenkranz
2004-03-31 Joerg Rosenkranz <joergr@voelcker.com>
* System.Data.OracleClient.Oci/OciDefineHandle.cs:
Changed DefineChar to allow retrieval of
multibyte characters (i.e. german umlauts).
* System.Data.OracleClient.Oci/OciStatementHandle.cs:
OciDefineHandles are now disposed in the
Dispose function.
svn path=/trunk/mcs/; revision=24996
Jackson Harper [Sat, 3 Apr 2004 08:11:48 +0000 (08:11 -0000)]
* ILParser.jay: Set assembly info.
svn path=/trunk/mcs/; revision=24995
Jackson Harper [Sat, 3 Apr 2004 08:09:05 +0000 (08:09 -0000)]
* CodeGen.cs: Allow setting assembly info.
svn path=/trunk/mcs/; revision=24994
Jackson Harper [Sat, 3 Apr 2004 08:06:24 +0000 (08:06 -0000)]
* PEAPI.cs: Allow hash algorithms to be any integer.
svn path=/trunk/mcs/; revision=24993
Martin Baulig [Sat, 3 Apr 2004 03:38:33 +0000 (03:38 -0000)]
Small fix.
svn path=/trunk/mcs/; revision=24990
Martin Baulig [Sat, 3 Apr 2004 03:30:23 +0000 (03:30 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* namespace.cs (NamespaceEntry.VerifyUsing): Added error checking
(CS0305 and CS0308).
svn path=/trunk/mcs/; revision=24989
Martin Baulig [Sat, 3 Apr 2004 03:26:46 +0000 (03:26 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* namespace.cs (NamespaceEntry.VerifyUsing): Added error checking
(CS0305 and CS0308).
svn path=/trunk/mcs/; revision=24988
Martin Baulig [Sat, 3 Apr 2004 03:25:37 +0000 (03:25 -0000)]
New tests.
svn path=/trunk/mcs/; revision=24987
Atsushi Eno [Fri, 2 Apr 2004 23:29:30 +0000 (23:29 -0000)]
2003-04-03 Atsushi Enomoto <atsushi@ximian.com>
* Path.cs : ChangeExtension() does not remove dot(.) when extension is
an empty string.
svn path=/trunk/mcs/; revision=24986
Atsushi Eno [Fri, 2 Apr 2004 23:27:27 +0000 (23:27 -0000)]
2003-04-03 Atsushi Enomoto <atsushi@ximian.com>
* PathTest.cs : Added more patterns on TestChangeExtension().
svn path=/trunk/mcs/; revision=24985
Martin Baulig [Fri, 2 Apr 2004 23:25:15 +0000 (23:25 -0000)]
New test.
svn path=/trunk/mcs/; revision=24984
Martin Baulig [Fri, 2 Apr 2004 22:13:38 +0000 (22:13 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* MonoGenericInst.cs (MonoGenericInst.DeclaringType): Override.
svn path=/trunk/mcs/; revision=24983
Martin Baulig [Fri, 2 Apr 2004 22:12:41 +0000 (22:12 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* icall.c
(ves_icall_MonoGenericInst_GetDeclaringType): New icall.
svn path=/trunk/mono/; revision=24982
Martin Baulig [Fri, 2 Apr 2004 22:08:20 +0000 (22:08 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* generic.cs (GenericMemberAccess.ResolveAsTypeStep): Added
support for nested types.
svn path=/trunk/mcs/; revision=24981
Martin Baulig [Fri, 2 Apr 2004 20:58:18 +0000 (20:58 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* ecore.cs (IAlias): New public interface.
(TypeExpr, TypeExpression): Implement IAlias.
(TypeAliasExpression): New public class.
* namespace.cs (Namespace): Implement IAlias.
(Namespace.Lookup): Return an IAlias instead on an object.
(Namespace.DefineName): Take an IAlias instead of an object.
(NamespaceEntry.AliasEntry.Resolve): Return an IAlias instead of
an object.
(NamespaceEntry.UsingAlias): Take a Membername instead of an
Expression.
(NamespaceEntry.LookupAlias): Return an IAlias instead on an
object.
(NamespaceEntry.Lookup): Likewise.
* rootcontext.cs (RootContext.LookupType): Return a TypeExpr
instead of a Type.
* decl.cs (DeclSpace): Implement IAlias.
(DeclSpace.LookupAlias): Return an IAlias instead of a string.
* generic.cs (ConstructedType): Improved error checking.
svn path=/trunk/mcs/; revision=24980
Bernie Solomon [Fri, 2 Apr 2004 18:58:03 +0000 (18:58 -0000)]
2004-04-02 Bernie Solomon <bernard@ugsolutions.com>
* PasswordDeriveBytesTest.cs: Add ToInt32LE so
it works on big endian machines.
svn path=/trunk/mcs/; revision=24978
Gonzalo Paniagua Javier [Fri, 2 Apr 2004 16:27:38 +0000 (16:27 -0000)]
2004-04-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* config.h.in: added HAVE_GETPWUID_R
* configure.in: check for getpwuid_r.
* mono/io-layer/security.c: use getpwuid_r if available. This one is
thread-safe.
svn path=/trunk/mono/; revision=24977
Zoltan Varga [Fri, 2 Apr 2004 16:04:11 +0000 (16:04 -0000)]
2004-04-02 Zoltan Varga <vargaz@freemail.hu>
* icall.c: Fix build.
svn path=/trunk/mono/; revision=24976
Zoltan Varga [Fri, 2 Apr 2004 15:51:53 +0000 (15:51 -0000)]
2004-04-02 Zoltan Varga <vargaz@freemail.hu>
* mini.c (mono_method_to_ir): Avoid handle_loaded_temps in
ldsfld and ldsflda.
svn path=/trunk/mono/; revision=24975
Sebastien Pouliot [Fri, 2 Apr 2004 15:36:15 +0000 (15:36 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* security.c|h: wrong version. Removed second icall.
svn path=/trunk/mono/; revision=24974
Zoltan Varga [Fri, 2 Apr 2004 15:23:11 +0000 (15:23 -0000)]
2004-04-02 Zoltan Varga <vargaz@freemail.hu>
* inssel-sparc.brg: Add more optimizations.
* mini-sparc.c: Replace multiply/divide with shifts if possible.
svn path=/trunk/mono/; revision=24973
Sebastien Pouliot [Fri, 2 Apr 2004 15:13:32 +0000 (15:13 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* Environment.cs: Now call the runtime to get the username (#56144).
svn path=/trunk/mcs/; revision=24972
Sebastien Pouliot [Fri, 2 Apr 2004 15:10:35 +0000 (15:10 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* Makefile.am: Added security.c|h.
* icall.c: Added icall for get_UserName;
* security.c: New file for security related icalls. Added function
get_UserName for System.Environment (fix #56144).
* security.h: New. Header file for security.c
svn path=/trunk/mono/; revision=24971
Sebastien Pouliot [Fri, 2 Apr 2004 15:08:46 +0000 (15:08 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* Makefile.am: Added security.c|h.
* security.c: New file for security related functions. Added function
GetUserName to fix #56144.
* security.h: New. Header file for security.c
* wapi.h: Added include for security.h
svn path=/trunk/mono/; revision=24970
Dick Porter [Fri, 2 Apr 2004 14:45:07 +0000 (14:45 -0000)]
2004-04-02 Dick Porter <dick@ximian.com>
* icall.c: Deleted the icalls that were obsoleted some time ago
by the ICU string code, and which were mixed into the icall
rearranging. Fixes bug 55969.
* string-icalls.h:
* string-icalls.c: Deleted the code that those icalls reference.
svn path=/trunk/mono/; revision=24969
Dick Porter [Fri, 2 Apr 2004 13:35:25 +0000 (13:35 -0000)]
2004-04-02 Dick Porter <dick@ximian.com>
* String.cs: More sanity checks in Replace(). Fixes bug 55822.
svn path=/trunk/mcs/; revision=24968
Sebastien Pouliot [Fri, 2 Apr 2004 13:03:05 +0000 (13:03 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* corlib_test.dll.sources: Added System/EnvironmentTest.cs.
svn path=/trunk/mcs/; revision=24967
Sebastien Pouliot [Fri, 2 Apr 2004 13:01:57 +0000 (13:01 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* EnvironmentTest.cs: New. Add unit tests for ExpandEnvironmentVariables.
svn path=/trunk/mcs/; revision=24966
Sebastien Pouliot [Fri, 2 Apr 2004 12:55:16 +0000 (12:55 -0000)]
2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
* Environment.cs: Implement ExpandEnvironmentVariables static method.
svn path=/trunk/mcs/; revision=24965
Gonzalo Paniagua Javier [Fri, 2 Apr 2004 12:43:48 +0000 (12:43 -0000)]
2004-04-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* MonoType.cs: AssemblyQualifiedName now displays culture, version...
Fixes bug #56341.
svn path=/trunk/mcs/; revision=24964
Jordi Mas i Hernandez [Fri, 2 Apr 2004 09:08:12 +0000 (09:08 -0000)]
region c# implementation
svn path=/trunk/mcs/; revision=24961
César Natarén [Fri, 2 Apr 2004 07:49:37 +0000 (07:49 -0000)]
changelog entry
svn path=/trunk/mcs/; revision=24960
César Natarén [Fri, 2 Apr 2004 07:47:52 +0000 (07:47 -0000)]
2004-04-02 Cesar Lopez Nataren <cesar@ciencias.unam.mx>
* Equality.cs: Moved the Emit and Resolve code here.
* jscript-lexer-parser.g: Build a Equality object instead of a
Binary object for equality_expr.
* expression.cs: moved equality oeprators (resolve and IL gen) to
Equality.Emit and Equality.Resolve.
svn path=/trunk/mcs/; revision=24959
Roopa Wilson [Fri, 2 Apr 2004 05:54:59 +0000 (05:54 -0000)]
2004-04-02 Roopa Wilson (RoWilson@novell.com)
* DataTable.cs : Included code to copy extended properties in CopyProperties() method
* DataTable.cs : CaseSensitive and Locale properties cannot be changedif the table belongs to a data relation
* DataTable.cs : Prefix property should not contain any specialcharacters
* DataTable.cs : Added code to BeginLoadData and EndLoadData methods tohandle tables not belonging to any data set
* DataTable.cs : Implemented an private property EnforceConstraints to enforceconstraints in EndLoadData when table is not part of any dataset
* DataTable.cs : Removed TODO tags for Clone (), Copy (), EndLoadData() and GetChanges ()
* DataTable.cs : Clear method should throw a NotSupportedException when the table is part of a DataSet bound to a XmlDataDocument
* DataSet.cs : Clear method should throw a NotSupportedException when DataSet is bound to a XmlDataDocument
* XmlDataDocument.cs : Included code to indicate to the DataSet that it is bound to this particular XmlDataDocument
* DataTableTest.cs: Included tests for the changes made in DatTable.cs
svn path=/trunk/mcs/; revision=24958
Miguel de Icaza [Fri, 2 Apr 2004 05:13:05 +0000 (05:13 -0000)]
Add new tests
svn path=/trunk/mcs/; revision=24956
Miguel de Icaza [Fri, 2 Apr 2004 04:49:26 +0000 (04:49 -0000)]
Flush
svn path=/trunk/mono/; revision=24954
Martin Baulig [Fri, 2 Apr 2004 04:37:18 +0000 (04:37 -0000)]
Add it.
svn path=/trunk/mcs/; revision=24953
Martin Baulig [Fri, 2 Apr 2004 04:37:10 +0000 (04:37 -0000)]
2004-04-02 Martin Baulig <martin@ximian.com>
* convert.cs: Added type parameter conversions.
* ecore.cs
(UnboxCast.Emit): Emit an `unbox.any' for type params.
(ClassCast.Emit): If the source type is a type parameter, box it.
If the target type is a type parameter, emit an `unbox.any'
instead of a `classcast'.
svn path=/trunk/mcs/; revision=24952
Martin Baulig [Fri, 2 Apr 2004 04:32:48 +0000 (04:32 -0000)]
New test.
svn path=/trunk/mcs/; revision=24951
Martin Baulig [Fri, 2 Apr 2004 04:15:15 +0000 (04:15 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* MonoGenericInst.cs (MonoGenericParam.IsValueTypeImpl): Override
this and always return false.
svn path=/trunk/mcs/; revision=24950
Martin Baulig [Fri, 2 Apr 2004 04:14:39 +0000 (04:14 -0000)]
A type parameter is no longer an interface.
svn path=/trunk/mcs/; revision=24949
Martin Baulig [Fri, 2 Apr 2004 04:14:16 +0000 (04:14 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* metadata.h (MONO_CLASS_IS_INTERFACE): New macro.
* class.c (mono_class_from_generic_parameter): Don't set
TYPE_ATTRIBUTE_INTERFACE.
(my_mono_class_from_generic_parameter): Likewise.
svn path=/trunk/mono/; revision=24948
Martin Baulig [Fri, 2 Apr 2004 03:07:58 +0000 (03:07 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* MonoGenericInst.cs (MonoGenericParam.IsSubclassOf): Override this.
svn path=/trunk/mcs/; revision=24945
Martin Baulig [Fri, 2 Apr 2004 02:25:03 +0000 (02:25 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* cs-tokenizer.cs (parse_less_than): Allow Token.DOT.
svn path=/trunk/mcs/; revision=24943
Martin Baulig [Fri, 2 Apr 2004 02:24:41 +0000 (02:24 -0000)]
Added gen-53.cs
svn path=/trunk/mcs/; revision=24942
Martin Baulig [Fri, 2 Apr 2004 02:19:24 +0000 (02:19 -0000)]
New test.
svn path=/trunk/mcs/; revision=24941
Martin Baulig [Fri, 2 Apr 2004 02:16:52 +0000 (02:16 -0000)]
Ooops, I screwed this up again.
svn path=/trunk/mcs/; revision=24940
Martin Baulig [Fri, 2 Apr 2004 02:16:36 +0000 (02:16 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* mini.c (handle_box): New static function; moved the
implementation of CEE_BOX here.
(mono_method_to_ir): Added `constrained_call' variable.
(mono_method_to_ir:CEE_CONSTRAINED_): Set it.
(mono_method_to_ir:CEE_CALL): If `constrained_call' is set, use
mono_method_get_constrained() to get the method.
svn path=/trunk/mono/; revision=24939
Martin Baulig [Fri, 2 Apr 2004 02:15:16 +0000 (02:15 -0000)]
Ooops.
svn path=/trunk/mono/; revision=24938
Martin Baulig [Fri, 2 Apr 2004 01:44:37 +0000 (01:44 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* loader.c (find_method): Added an optional `MonoClass *ic'
argument to search in a specific interface.
(mono_get_method_constrained): New public function.
svn path=/trunk/mono/; revision=24937
Duncan Mak [Fri, 2 Apr 2004 01:20:34 +0000 (01:20 -0000)]
* GraphicsPath.cs (AddCurve, AddClosedCurve): Added all overloads.
* Graphics.cs (DrawCurve): Call the correct GDI+ wrappers.
* gdipFunctions.cs (GdipAddPathCurveI):
(GdipAddPathCurve2, GdipAddPathCurve2I):
(GdipAddPathCurve3, GdipAddPathCurve3I):
(GdipAddPathClosedCurve, GdipAddPathClosedCurveI):
(GdipAddPathClosedCurve2, GdipAddPathClosedCurve2I): Added new
wrappers from GDI+.
svn path=/trunk/mcs/; revision=24936
Lluis Sanchez [Thu, 1 Apr 2004 22:51:21 +0000 (22:51 -0000)]
* TemplateControlCompiler.cs: Fixed build for net_1_0 profile.
svn path=/trunk/mcs/; revision=24934
Lluis Sanchez [Thu, 1 Apr 2004 22:49:44 +0000 (22:49 -0000)]
* FolderBrowserDialog.cs: Fixed build for net_1_0 profile.
svn path=/trunk/mcs/; revision=24933
Lluis Sanchez [Thu, 1 Apr 2004 22:48:52 +0000 (22:48 -0000)]
* XmlDsigEnvelopedSignatureTransform.cs, XmlDsigXPathTransform.cs,
XmlDsigXsltTransform.cs: Fixed build for net_1_0 profile.
svn path=/trunk/mcs/; revision=24932
Lluis Sanchez [Thu, 1 Apr 2004 22:48:05 +0000 (22:48 -0000)]
* X509Chain.cs: Fixed build for net_1_0 profile.
svn path=/trunk/mcs/; revision=24931
Martin Baulig [Thu, 1 Apr 2004 22:04:55 +0000 (22:04 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* expression.cs (Invocation.EmitCall): If we're invoking a method
on a type parameter, use the new `Constrained' prefix opcode.
svn path=/trunk/mcs/; revision=24929
Martin Baulig [Thu, 1 Apr 2004 22:01:04 +0000 (22:01 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* OpCodes.cs (OpCodes.Constrained): New opcode.
svn path=/trunk/mcs/; revision=24928
Martin Baulig [Thu, 1 Apr 2004 21:55:07 +0000 (21:55 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* dump.c (dump_table_memberref): Added support for TypeDef's.
svn path=/trunk/mono/; revision=24927
Martin Baulig [Thu, 1 Apr 2004 21:54:41 +0000 (21:54 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* reflection.c (mono_image_get_generic_field_token): Use the
`handleref' cache here.
svn path=/trunk/mono/; revision=24926
Martin Baulig [Thu, 1 Apr 2004 21:42:56 +0000 (21:42 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* reflection.h (MonoDynamicImage): Added `GHashTable *typespec'.
* reflection.c (create_generic_typespec): Use the `typespec' hash
here, not the `typeref' one.
svn path=/trunk/mono/; revision=24925
Martin Baulig [Thu, 1 Apr 2004 20:18:34 +0000 (20:18 -0000)]
Make this actually work; user-defined implicit conversions are not allowed here.
svn path=/trunk/mcs/; revision=24923
Martin Baulig [Thu, 1 Apr 2004 20:16:57 +0000 (20:16 -0000)]
New test, formerly known as gen-51.cs.
svn path=/trunk/mcs/; revision=24922
Martin Baulig [Thu, 1 Apr 2004 20:13:48 +0000 (20:13 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* generic.cs (ConstructedType.CheckConstraints): Use
Convert.ImplicitStandardConversionExists(); user-defined implicit
conversions are not allowed according to the spec.
svn path=/trunk/mcs/; revision=24921
Martin Baulig [Thu, 1 Apr 2004 19:45:49 +0000 (19:45 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* mini.c (TYPE_PARAM_TO_TYPE, TYPE_PARAM_TO_CLASS): Removed.
(MTYPE_PARAM_TO_TYPE, MTYPE_PARAM_TO_CLASS): Removed.
(mono_method_to_ir): We don't need these macros anymore since
mono_class_get_full() already takes care of it.
svn path=/trunk/mono/; revision=24920
Martin Baulig [Thu, 1 Apr 2004 19:44:25 +0000 (19:44 -0000)]
2004-04-01 Martin Baulig <martin@ximian.com>
* class.c (mono_class_inflate_generic_type): Moved the
functionality into a new static inflate_generic_type() which
returns NULL if it didn't do anything. Only increment the
`mono_stats.inflated_type_count' if we actually inflated
something.
(mono_class_get_full): Check the classes type to see whether we
need to inflate it; also inflate MONO_TYPE_(M)VAR.
svn path=/trunk/mono/; revision=24919
Miguel de Icaza [Thu, 1 Apr 2004 18:38:54 +0000 (18:38 -0000)]
Update
svn path=/trunk/mono/; revision=24918
Jackson Harper [Thu, 1 Apr 2004 18:37:44 +0000 (18:37 -0000)]
* reflection.c: Set culture for assembly references.
svn path=/trunk/mono/; revision=24917
Miguel de Icaza [Thu, 1 Apr 2004 18:32:01 +0000 (18:32 -0000)]
MCS now checks for CLS compliance.
Patch from Marek Safar, thanks a lot Marek for working so hard in getting
every detail right.
2004-03-30 Marek Safar <marek.safar@seznam.cz>
* attribute.cs (Attribute): Location is now public.
(Resolve): Store resolved arguments (pos_values) in attribute class.
Attribute extractors (now GetClsCompliantAttributeValue) can reuse them.
(GetClsCompliantAttributeValue): New method that gets
CLSCompliantAttribute value.
(GetClsCompliantAttribute): Returns CLSCompliantAttribute for DeclSpace
if exists else null.
(AttributeTester): New class for CLS-Compliant verification routines.
* class.cs (Emit): Add CLS-Compliant verification.
(Method.GetSignatureForError): Implemented.
(Constructor.GetSignatureForError): Implemented
(Constructor.HasCompliantArgs): Returns if constructor has
CLS-Compliant arguments.
(Constructor.Emit): Override.
(Construcor.IsIdentifierClsCompliant): New method; For constructors
is needed to test only parameters.
(FieldBase.GetSignatureForError): Implemented.
(TypeContainer): New member for storing base interfaces.
(TypeContainer.FindMembers): Search in base interfaces too.
* codegen.cs (GetClsComplianceAttribute): New method that gets
assembly or module CLSCompliantAttribute value.
(ResolveClsCompliance): New method that resolve CLSCompliantAttribute
for assembly.
(ModuleClass.Emit): Add error 3012 test.
* const.cs (Emit): Override and call base for CLS-Compliant tests.
* decl.cs (ClsComplianceValue): New enum that holds CLS-Compliant
state for all decl types.
(MemberCore.Emit): Emit is now virtual and call VerifyClsCompliance
if CLS-Compliant tests are required.
(IsClsCompliaceRequired): New method. Analyze whether code
must be CLS-Compliant.
(IsExposedFromAssembly): New method. Returns true when MemberCore
is exposed from assembly.
(GetClsCompliantAttributeValue): New method. Resolve CLSCompliantAttribute
value or gets cached value.
(HasClsCompliantAttribute): New method. Returns true if MemberCore
is explicitly marked with CLSCompliantAttribute.
(IsIdentifierClsCompliant): New abstract method. This method is
used to testing error 3005.
(IsIdentifierAndParamClsCompliant): New method. Common helper method
for identifier and parameters CLS-Compliant testing.
(VerifyClsCompliance): New method. The main virtual method for
CLS-Compliant verifications.
(CheckAccessLevel): In one special case (System.Drawing) was TypeBuilder
null. I don't know why is null (too many public members !).
(GetClsCompliantAttributeValue). New method. Goes through class hierarchy
and get value of first CLSCompliantAttribute that found.
delegate.cs (Emit): Override and call base for CLS-Compliant tests.
(VerifyClsCompliance): Override and add extra tests.
* driver.cs (CSCParseOption): New command line options (clscheck[+|-]).
clscheck- disable CLS-Compliant verification event if assembly is has
CLSCompliantAttribute(true).
* enum.cs (Emit): Override and call base for CLS-Compliant tests.
ApllyAttribute is now called in emit section as in the other cases.
Possible future Emit integration.
(IsIdentifierClsCompliant): New override.
(VerifyClsCompliance): New override.
(GetEnumeratorName): Returns full enum name.
* parameter.cs (GetSignatureForError): Implemented.
* report.cs (WarningData): New struct for Warning message information.
(LocationOfPreviousError): New method.
(Warning): New method. Reports warning based on the warning table.
(Error_T): New method. Reports error based on the error table.
* rootcontext.cs (EmitCode): Added new Emit(s) because CLS-Compliant
verifications are done here.
* tree.cs (RecordDecl): Used new LocationOfPreviousError method.
* typemanager.cs (cls_compliant_attribute_type): New member thath holds
CLSCompliantAttribute.
(all_imported_types): New member holds all imported types from other
assemblies.
(LoadAllImportedTypes): New method fills static table with exported types
from all referenced assemblies.
(Modules): New property returns all assembly modules.
svn path=/trunk/mcs/; revision=24916
Ben Maurer [Thu, 1 Apr 2004 18:01:47 +0000 (18:01 -0000)]
2004-04-01 Ben Maurer <bmaurer@users.sourceforge.net>
* LocalBuilder.cs: Fix pinned support.
svn path=/trunk/mcs/; revision=24915
Ben Maurer [Thu, 1 Apr 2004 18:00:35 +0000 (18:00 -0000)]
2004-04-01 Ben Maurer <bmaurer@users.sourceforge.net>
* reflection.[ch], icall.[ch], Fix support for pinning variables.
svn path=/trunk/mono/; revision=24914
Lluis Sanchez [Thu, 1 Apr 2004 17:17:37 +0000 (17:17 -0000)]
* TdsMetaParameter.cs: When the size of the parameter is not specified,
use the same default sizes as in MS.NET.
svn path=/trunk/mcs/; revision=24911
Lluis Sanchez [Thu, 1 Apr 2004 14:40:32 +0000 (14:40 -0000)]
* RemotingProxy.cs: Changed the rules for casting WKO proxies, to match
MS.NET behavior.
svn path=/trunk/mcs/; revision=24909
Lluis Sanchez [Thu, 1 Apr 2004 14:32:28 +0000 (14:32 -0000)]
* TdsDataReader.cs: Null values are now represented with DBNull instances.
Deal with this.
svn path=/trunk/mcs/; revision=24908
Lluis Sanchez [Thu, 1 Apr 2004 14:30:54 +0000 (14:30 -0000)]
* SoapTypeAttribute.cs: Reverted last change. MS.NET don't return the full
assembly name.
svn path=/trunk/mcs/; revision=24907
Lluis Sanchez [Thu, 1 Apr 2004 14:22:08 +0000 (14:22 -0000)]
* Tds.cs: All methods now return DBNull instead of null for null values.
* Tds50.cs, Tds70.cs: Support parameters with DBNull value.
svn path=/trunk/mcs/; revision=24906
Lluis Sanchez [Thu, 1 Apr 2004 14:21:04 +0000 (14:21 -0000)]
* Mono.Data.SybaseClient/SybaseDataReader.cs: Null values are now
represented with DBNull instances. Deal with this.
* Mono.Data.SybaseTypes/SybaseNullValueException.cs: Use a more clarifying
error message.
svn path=/trunk/mcs/; revision=24905
Lluis Sanchez [Thu, 1 Apr 2004 14:20:11 +0000 (14:20 -0000)]
* TdsNullValueException.cs: Use a more clarifying error message.
svn path=/trunk/mcs/; revision=24904
Lluis Sanchez [Thu, 1 Apr 2004 14:17:49 +0000 (14:17 -0000)]
* SqlNullValueException.cs: Use a more clarifying error message.
svn path=/trunk/mcs/; revision=24903
Lluis Sanchez [Thu, 1 Apr 2004 14:16:59 +0000 (14:16 -0000)]
* SqlDataReader.cs: Null values are now represented with DBNull instances.
Deal with this.
svn path=/trunk/mcs/; revision=24902
Lluis Sanchez [Thu, 1 Apr 2004 13:29:53 +0000 (13:29 -0000)]
* FileSystemInfo.cs: Added InternalRefresh, a virtual method that derived
classes can override to perform class specific refreshing.
* FileInfo.cs: Refresh existence flag when Refresh is called.
* TextWriter.cs: Applied patch by Benjamin Jemlich for bug #52512.
The method Write(char) should do nothing by default.
svn path=/trunk/mcs/; revision=24901
Jackson Harper [Thu, 1 Apr 2004 10:29:05 +0000 (10:29 -0000)]
* Driver.cs: The parser now needs to take a scanner object in its
constructor so it can set a flag when parsing byte arrays.
svn path=/trunk/mcs/; revision=24900
Jackson Harper [Thu, 1 Apr 2004 10:28:33 +0000 (10:28 -0000)]
* ILParser.jay: Set a flag in the tokenizer when parsing byte
arrays. Otherwise we can't tell WTF they are. Set assemblyref
attributes.
svn path=/trunk/mcs/; revision=24899
Jackson Harper [Thu, 1 Apr 2004 10:28:05 +0000 (10:28 -0000)]
* CodeGen.cs: Add a current assembly ref and methods to create/end
it so we can set assembly ref attributes.
* ExternTable.cs: Make the ExternAssembly public so that its
attributes can be set.
svn path=/trunk/mcs/; revision=24898