mono.git
22 years ago* added DateTimeFormatInfo.cs
Martin Weindel [Sun, 4 Nov 2001 13:00:36 +0000 (13:00 -0000)]
* added DateTimeFormatInfo.cs
* fixed minor bug in NumberFormatInfo.Clone() with readonly flag

svn path=/trunk/mcs/; revision=1253

22 years agoadded DayOfWeek.cs
Martin Weindel [Sun, 4 Nov 2001 12:53:22 +0000 (12:53 -0000)]
added DayOfWeek.cs

svn path=/trunk/mcs/; revision=1252

22 years ago2001-11-04 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Sun, 4 Nov 2001 10:59:08 +0000 (10:59 -0000)]
2001-11-04 Nick Drochak <ndrochak@gol.com>
        * Queue.cs: Fixed small syntax errors that were preventing the compile.
        I changed the build file to include Queue.cs as well.

svn path=/trunk/mcs/; revision=1251

22 years ago2001-11-04 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Sun, 4 Nov 2001 10:51:59 +0000 (10:51 -0000)]
2001-11-04 Nick Drochak <ndrochak@gol.com>
* RandomTest.cs: Add message to Assert() in TestDouble.
Double.ToString() is not implemented yet, so this doesn't
help.

svn path=/trunk/mcs/; revision=1250

22 years ago* Added message string to each Assert in TestByteConstructor
Nick Drochak [Sun, 4 Nov 2001 06:04:13 +0000 (06:04 -0000)]
* Added message string to each Assert in TestByteConstructor

svn path=/trunk/mcs/; revision=1249

22 years ago2001-11-04 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Sun, 4 Nov 2001 04:48:36 +0000 (04:48 -0000)]
2001-11-04 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs: Fixed "off by one" error when shifting left the array when
items are removed.

* CollectionBase.cs: Added OnValidate(), OnRemove() and OnRemoveComplete()
hook methods to the RemoveAt() method.

svn path=/trunk/mcs/; revision=1248

22 years ago2001-11-04 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Sun, 4 Nov 2001 03:15:53 +0000 (03:15 -0000)]
2001-11-04 Nick Drochak <ndrochak@gol.com>
* ArrayList.cs: Added private enumerator class and make GetEnumerator()
methods return an instance of it.

svn path=/trunk/mcs/; revision=1247

22 years ago2001-11-03 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Sat, 3 Nov 2001 05:56:29 +0000 (05:56 -0000)]
2001-11-03  Dietmar Maurer  <dietmar@ximian.com>

* emit-x86.c (enter_method): new debugging code
(leave_method): new debbuging code, this functions are called
when you use the new option --trace-calls

svn path=/trunk/mono/; revision=1246

22 years ago2001-11-02 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Fri, 2 Nov 2001 13:29:25 +0000 (13:29 -0000)]
2001-11-02  Dietmar Maurer  <dietmar@ximian.com>

* testjit.c: impl. STELEM_XX, STELEM_XX

* x86.brg: impl. LDLEN, LDELEMA

svn path=/trunk/mono/; revision=1244

22 years agothe jit is now using a control flow graph
Dietmar Maurer [Fri, 2 Nov 2001 10:12:24 +0000 (10:12 -0000)]
the jit is now using a control flow graph

svn path=/trunk/mono/; revision=1243

22 years agoStunts to rename cs111.cs to cs0111.cs ;-)
Ravi Pratap M [Fri, 2 Nov 2001 06:23:37 +0000 (06:23 -0000)]
Stunts to rename cs111.cs to cs0111.cs ;-)

svn path=/trunk/mcs/; revision=1242

22 years agoSuppress building of the new Test directory.
Mike Kestner [Thu, 1 Nov 2001 16:21:34 +0000 (16:21 -0000)]
Suppress building of the new Test directory.

svn path=/trunk/mcs/; revision=1241

22 years agoRemove test-34 from test suite for now because it won't pass
Ravi Pratap M [Thu, 1 Nov 2001 07:28:11 +0000 (07:28 -0000)]
Remove test-34 from test suite for now because it won't pass
make verify.

svn path=/trunk/mcs/; revision=1240

22 years ago2001-11-01 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Thu, 1 Nov 2001 07:27:12 +0000 (07:27 -0000)]
2001-11-01  Ravi Pratap  <ravi@ximian.com>

* tree.cs (RecordNamespace): Fix up to check for the correct key.

* cs-parser.jay (GetQualifiedIdentifier): New Helper method used in
local_variable_type to extract the string corresponding to the type.

(local_variable_type): Fixup the action to use the new helper method.

* codegen.cs : Get rid of RefOrOutParameter, it's not the right way to
go.

* expression.cs : Clean out code which uses the above.

svn path=/trunk/mcs/; revision=1239

22 years agoAdd.
Ravi Pratap M [Thu, 1 Nov 2001 06:35:40 +0000 (06:35 -0000)]
Add.

svn path=/trunk/mcs/; revision=1238

22 years agoUpdated Status for System.Drawing.Point to reflect test suite completion.
Mike Kestner [Wed, 31 Oct 2001 21:02:11 +0000 (21:02 -0000)]
Updated Status for System.Drawing.Point to reflect test suite completion.

svn path=/trunk/mono/; revision=1237

22 years ago2001-10-31 Mike Kestner <mkestner@speakeasy.net>
Mike Kestner [Wed, 31 Oct 2001 20:57:44 +0000 (20:57 -0000)]
2001-10-31  Mike Kestner <mkestner@speakeasy.net>

* TestPoint.cs : Tests I've had in my node forever. Need some nant
action to build this new node.

svn path=/trunk/mcs/; revision=1236

22 years agoAdd.
Ravi Pratap M [Wed, 31 Oct 2001 14:57:25 +0000 (14:57 -0000)]
Add.

svn path=/trunk/mcs/; revision=1235

22 years ago2001-10-31 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Wed, 31 Oct 2001 14:56:33 +0000 (14:56 -0000)]
2001-10-31  Ravi Pratap  <ravi@ximian.com>

* typemanager.cs (RegisterMethod): Check if we already have an existing key
and bale out if necessary by returning a false.

(RegisterProperty): Ditto.

* class.cs (everywhere): Check the return value from TypeManager.RegisterMethod
and print out appropriate error messages.

* interface.cs (everywhere): Ditto.

* cs-parser.jay (property_declaration, event_declaration, indexer_declaration): Pass
location to constructor.

* class.cs (Property, Event, Indexer): Update accordingly.

* ../errors/cs111.cs : Added.

* expression.cs (Invocation::IsApplicable): New static method to determine applicability
of a method, as laid down by the spec.

(Invocation::OverloadResolve): Use the above method.

svn path=/trunk/mcs/; revision=1234

22 years ago2001-10-31 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Wed, 31 Oct 2001 14:53:53 +0000 (14:53 -0000)]
2001-10-31  Ravi Pratap  <ravi@ximian.com>

* test-34.cs : Add

svn path=/trunk/mcs/; revision=1233

22 years ago2001-10-31 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Wed, 31 Oct 2001 06:38:00 +0000 (06:38 -0000)]
2001-10-31  Ravi Pratap  <ravi@ximian.com>

* support.cs (InternalParameters): Get rid of crap taking in duplicate info. We
now take a TypeContainer and a Parameters object.

(ParameterData): Modify return type of ParameterModifier method to be
Parameter.Modifier and not a string.

(ReflectionParameters, InternalParameters): Update accordingly.

* expression.cs (Argument::GetParameterModifier): Same here.

* support.cs (InternalParameters::ParameterType): Find a better way of determining
if we are a ref/out parameter. Actually, the type shouldn't be holding the '&'
symbol in it at all so maybe this is only for now.

svn path=/trunk/mcs/; revision=1232

22 years ago2001-10-30 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Tue, 30 Oct 2001 12:52:22 +0000 (12:52 -0000)]
2001-10-30  Ravi Pratap  <ravi@ximian.com>

* support.cs (InternalParameters): Constructor now takes an extra argument
which is the actual Parameters class.

(ParameterDesc): Update to provide info on ref/out modifiers.

* class.cs (everywhere): Update call to InternalParameters to pass in
the second argument too.

* support.cs (ParameterData): Add ParameterModifier, which is a method
to return the modifier info [ref/out etc]

(InternalParameters, ReflectionParameters): Implement the above.

* expression.cs (Argument::ParameterModifier): Similar function to return
info about the argument's modifiers.

(Invocation::OverloadResolve): Update to take into account matching modifiers
too.

* class.cs (Indexer::Define): Actually define a Parameter object and put it onto
a new SetFormalParameters object which we pass to InternalParameters.

svn path=/trunk/mcs/; revision=1230

22 years ago2001-10-30 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Tue, 30 Oct 2001 04:06:58 +0000 (04:06 -0000)]
2001-10-30  Ravi Pratap  <ravi@ximian.com>

* expression.cs (NewArray): Merge into the ArrayCreation class.

2001-10-29  Ravi Pratap  <ravi@ximian.com>

* expression.cs (NewArray): Merge classes NewBuiltinArray and
NewUserdefinedArray into one as there wasn't much of a use in having
two separate ones.

* expression.cs (Argument): Change field's name to ArgType from Type.

(Type): New readonly property which returns the proper type, taking into
account ref/out modifiers.

(everywhere): Adjust code accordingly for the above.

* codegen.cs (EmitContext.RefOrOutParameter): New field to determine
whether we are emitting for a ref or out parameter.

* expression.cs (Argument::Emit): Use the above field to set the state.

(LocalVariableReference::Emit): Update to honour the flag and emit the
right stuff.

* parameter.cs (Attributes): Set the correct flags for ref parameters.

* expression.cs (Argument::FullDesc): New function to provide a full desc.

* support.cs (ParameterData): Add method ParameterDesc to the interface.

(ReflectionParameters, InternalParameters): Implement the above method.

* expression.cs (Invocation::OverloadResolve): Use the new desc methods in
reporting errors.

(Invocation::FullMethodDesc): Ditto.

svn path=/trunk/mcs/; revision=1229

22 years ago2001-10-29 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Mon, 29 Oct 2001 23:44:54 +0000 (23:44 -0000)]
2001-10-29  Miguel de Icaza  <miguel@ximian.com>

* cs-parser.jay: Add extra production for the second form of array
creation.

* expression.cs (ArrayCreation): Update to reflect the above
change.

svn path=/trunk/mcs/; revision=1228

22 years ago2001-10-29 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Mon, 29 Oct 2001 22:15:01 +0000 (22:15 -0000)]
2001-10-29  Miguel de Icaza  <miguel@ximian.com>

* Small changes to prepare for Array initialization.

svn path=/trunk/mcs/; revision=1227

22 years agoFix namespace bug, patch from Rafael
Miguel de Icaza [Mon, 29 Oct 2001 17:01:51 +0000 (17:01 -0000)]
Fix namespace bug, patch from Rafael

svn path=/trunk/mcs/; revision=1226

22 years ago2001-10-29 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Mon, 29 Oct 2001 11:16:03 +0000 (11:16 -0000)]
2001-10-29  Nick Drochak  <ndrochak@gol.com>

* StringBuilder.cs: Throw exceptions when constructor paramter(s) are
invalid. Just like MS does (as best as I can tell).

Tests for these exceptions are now added to the unit tests as well.

svn path=/trunk/mcs/; revision=1225

22 years ago2001-10-28 Jeffrey Stedfast <fejj@ximian.com>
Jeffrey Stedfast [Sun, 28 Oct 2001 23:54:56 +0000 (23:54 -0000)]
2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>

* String.cs: Don't use a terminating nil char for our internal
array.

svn path=/trunk/mcs/; revision=1224

22 years agoAdd another test to array creation
Miguel de Icaza [Sun, 28 Oct 2001 15:07:08 +0000 (15:07 -0000)]
Add another test to array creation

svn path=/trunk/mcs/; revision=1223

22 years ago2001-10-28 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sun, 28 Oct 2001 15:03:52 +0000 (15:03 -0000)]
2001-10-28  Miguel de Icaza  <miguel@ximian.com>

* typemanager.cs (ImplementsInterface): interface might be null;
Deal with this problem;

Also, we do store negative hits on the cache (null values), so use
this instead of calling t.GetInterfaces on the type everytime.

svn path=/trunk/mcs/; revision=1222

22 years ago2001-10-28 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Sun, 28 Oct 2001 09:38:33 +0000 (09:38 -0000)]
2001-10-28  Ravi Pratap  <ravi@ximian.com>

* typemanager.cs (IsBuiltinType): New method to help determine the same.

* expression.cs (New::DoResolve): Get rid of array creation code and instead
split functionality out into different classes.

(New::FormArrayType): Move into NewBuiltinArray.

(Invocation::EmitArguments): Get rid of the MethodBase argument. Appears
quite useless.

(NewBuiltinArray): New class to handle creation of built-in arrays.

(NewBuiltinArray::DoResolve): Implement guts of array creation. Also take into
account creation of one-dimensional arrays.

(::Emit): Implement to use Newarr and Newobj opcodes accordingly.

(NewUserdefinedArray::DoResolve): Implement.

* cs-parser.jay (local_variable_type): Fix up to add the rank to the variable too.

* typemanager.cs (AddModule): Used to add a ModuleBuilder to the list of modules
we maintain inside the TypeManager. This is necessary to perform lookups on the
module builder.

(LookupType): Update to perform GetType on the module builders too.

* driver.cs (Driver): Add the ModuleBuilder to the list maintained by the TypeManager.

* exprssion.cs (NewUserdefinedArray::Emit): Implement.

svn path=/trunk/mcs/; revision=1221

22 years ago2001-10-28 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Sun, 28 Oct 2001 09:35:35 +0000 (09:35 -0000)]
2001-10-28  Ravi Pratap  <ravi@ximian.com>

* test-32.cs : Added to test array definition and creation.

* makefile : Updated accordingly.

svn path=/trunk/mcs/; revision=1220

22 years agoUpdate TODO
Miguel de Icaza [Sun, 28 Oct 2001 01:54:24 +0000 (01:54 -0000)]
Update TODO

svn path=/trunk/mcs/; revision=1219

22 years agoUpdate
Miguel de Icaza [Sat, 27 Oct 2001 19:46:06 +0000 (19:46 -0000)]
Update

svn path=/trunk/mono/; revision=1218

22 years agoMore updates
Miguel de Icaza [Sat, 27 Oct 2001 19:40:51 +0000 (19:40 -0000)]
More updates

svn path=/trunk/mono/; revision=1217

22 years ago2001-10-27 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sat, 27 Oct 2001 19:39:42 +0000 (19:39 -0000)]
2001-10-27  Miguel de Icaza  <miguel@ximian.com>

* Delegate.cs (Delegate.CombineImpl): Implement.
(Delegate.Combine): Implement.

* MulticastDelegate.cs (MulticastDelegate.Equals): Implement.

(MulticastDelegate.CombineImpl): This was not as trivial as I
thought.

* ContextStaticAttribute.cs: Added AttributeUsage to
ContextStaticAttribute.

* FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute

svn path=/trunk/mcs/; revision=1216

22 years ago2001-10-27 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sat, 27 Oct 2001 19:38:07 +0000 (19:38 -0000)]
2001-10-27  Miguel de Icaza  <miguel@ximian.com>

* DesignerSerializationVisibilityAttribute.cs: Implemented.

* DesignerSerializationVisibility.cs: New enumeration.

* LocalizableAttribute.cs: Implemented.

* BrowsableAttribute.cs: Implemented.

* DesignOnlyAttribute.cs: Implemented.

* DescriptionAttribute.cs: Implement.

* MemberDescriptor.cs: Implemented.

* CategoryAttribute.cs: implemented.

svn path=/trunk/mcs/; revision=1215

22 years agoIncorporate System.Web.UI.WebControls to the build + some fixes
Miguel de Icaza [Sat, 27 Oct 2001 19:27:55 +0000 (19:27 -0000)]
Incorporate System.Web.UI.WebControls to the build + some fixes

svn path=/trunk/mcs/; revision=1214

22 years ago2001-10-27 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sat, 27 Oct 2001 15:14:36 +0000 (15:14 -0000)]
2001-10-27  Miguel de Icaza  <miguel@ximian.com>

* expression.cs:

(Expression.Resolve): Report a 246 error (can not resolve name)
if we find a SimpleName in the stream.

(Expression.ResolveLValue): Ditto.

(Expression.ResolveWithSimpleName): This function is a variant of
ResolveName, this one allows SimpleNames to be returned without a
warning.  The only consumer of SimpleNames is MemberAccess

svn path=/trunk/mcs/; revision=1213

22 years agoMake the various versioning tests work
Miguel de Icaza [Sat, 27 Oct 2001 15:12:16 +0000 (15:12 -0000)]
Make the various versioning tests work

svn path=/trunk/mcs/; revision=1212

22 years ago2001-10-27 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sat, 27 Oct 2001 13:06:50 +0000 (13:06 -0000)]
2001-10-27  Miguel de Icaza  <miguel@ximian.com>

* expression.cs: Fix bug I introduced lsat night that broke
Delegates.

svn path=/trunk/mcs/; revision=1211

22 years agoUpdates from Gaurav
Miguel de Icaza [Sat, 27 Oct 2001 12:44:59 +0000 (12:44 -0000)]
Updates from Gaurav

svn path=/trunk/mono/; revision=1210

22 years agoAdd lots of work from Gaurav
Miguel de Icaza [Sat, 27 Oct 2001 12:35:12 +0000 (12:35 -0000)]
Add lots of work from Gaurav

svn path=/trunk/mcs/; revision=1209

22 years agoUpdate
Miguel de Icaza [Sat, 27 Oct 2001 12:27:56 +0000 (12:27 -0000)]
Update

svn path=/trunk/mono/; revision=1208

22 years ago2001-10-26 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sat, 27 Oct 2001 00:15:20 +0000 (00:15 -0000)]
2001-10-26  Miguel de Icaza  <miguel@ximian.com>

* expression.cs (Invocation::DoResolve): Catch SimpleNames that
might arrive here.  I have my doubts that this is correct.

* statement.cs (Lock): Implement lock statement.

* cs-parser.jay: Small fixes to support `lock' and `using'

* cs-tokenizer.cs: Remove extra space

* driver.cs: New flag --checked, allows to turn on integer math
checking.

* typemanger.cs: Load methodinfos for Threading.Monitor.Enter and
Threading.Monitor.Exit

svn path=/trunk/mcs/; revision=1207

22 years agoThese tests are used for testing the C# versioning provisions. I have
Miguel de Icaza [Sat, 27 Oct 2001 00:10:42 +0000 (00:10 -0000)]
These tests are used for testing the C# versioning provisions.  I have
not tested them yet.

svn path=/trunk/mcs/; revision=1206

22 years agoAdd new classes to get rid of the warnings being emitted by the
Miguel de Icaza [Sat, 27 Oct 2001 00:08:33 +0000 (00:08 -0000)]
Add new classes to get rid of the warnings being emitted by the
interpreter (although new warning are now there, we need to get the
Decimal internalcalls in place).

Implement some bits of CultureInfo, but it is yet far from finished.

svn path=/trunk/mcs/; revision=1205

22 years agoAdd a bunch of new classes to reduce warnings from Mint
Miguel de Icaza [Thu, 25 Oct 2001 19:34:35 +0000 (19:34 -0000)]
Add a bunch of new classes to reduce warnings from Mint

svn path=/trunk/mcs/; revision=1202

22 years agouse relative numbering for runtime type checks
Dietmar Maurer [Thu, 25 Oct 2001 05:34:19 +0000 (05:34 -0000)]
use relative numbering for runtime type checks

svn path=/trunk/mono/; revision=1201

22 years agomore tests for general format and some changed tests for parsing
Martin Weindel [Wed, 24 Oct 2001 14:49:59 +0000 (14:49 -0000)]
more tests for general format and some changed tests for parsing

svn path=/trunk/mcs/; revision=1200

22 years agominor bug fix for general format
Martin Weindel [Wed, 24 Oct 2001 14:48:38 +0000 (14:48 -0000)]
minor bug fix for general format

svn path=/trunk/mcs/; revision=1199

22 years ago2001-10-25 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Wed, 24 Oct 2001 12:27:50 +0000 (12:27 -0000)]
2001-10-25  Nick Drochak  <ndrochak@gol.com>

* StringBuilder.cs: Throw exception if they try to make a StringBuilder
whose capacity is greater than the MaxCapacity.

I added some tests for the constructors and the above exception. More
coming soon.

svn path=/trunk/mcs/; revision=1198

22 years ago2001-10-23 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Wed, 24 Oct 2001 00:57:09 +0000 (00:57 -0000)]
2001-10-23  Nick Drochak  <ndrochak@gol.com>

* StringBuilder.cs: Refactored constructor code into just one
constructor. All the other construtors call it. Also supplied missing
constructors so the class has all those in the spec.

Added the MaxCapacity property as well, however this needs to be
completed to return a value is related to the available system memory.

svn path=/trunk/mcs/; revision=1197

22 years ago2001-10-22 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Tue, 23 Oct 2001 14:14:26 +0000 (14:14 -0000)]
2001-10-22  Miguel de Icaza  <miguel@ximian.com>

* class.cs (TypeContainer::Emit): Emit code for indexers.

* assign.cs (IAssignMethod): New interface implemented by Indexers
and Properties for handling assignment.

(Assign::Emit): Simplify and reuse code.

* expression.cs (IndexerAccess, PropertyExpr): Implement

svn path=/trunk/mcs/; revision=1196

22 years agoUpdate
Miguel de Icaza [Tue, 23 Oct 2001 13:20:15 +0000 (13:20 -0000)]
Update

svn path=/trunk/mono/; revision=1195

22 years ago2001-10-22 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Mon, 22 Oct 2001 12:32:25 +0000 (12:32 -0000)]
2001-10-22  Ravi Pratap  <ravi@ximian.com>

* typemanager.cs (ImplementsInterface): New method to determine if a type
implements a given interface. Provides a nice cache too.

* expression.cs (ImplicitReferenceConversion): Update checks to use the above
method.

(ConvertReferenceExplicit): Ditto.

* delegate.cs (Delegate::Populate): Update to define the parameters on the
various methods, with correct names etc.

* class.cs (Operator::OpType): New members Operator.UnaryPlus and
Operator.UnaryNegation.

* cs-parser.jay (operator_declarator): Be a little clever in the case where
we have a unary plus or minus operator.

* expression.cs (Unary): Rename memebers of Operator enum to UnaryPlus and
UnaryMinus.

* everywhere : update accordingly.

* everywhere : Change Negate and BitComplement to LogicalNot and OnesComplement
respectively.

* class.cs (Method::Define): For the case where we are implementing a method
inherited from an interface, we need to set the MethodAttributes.Final flag too.
Also set MethodAttributes.NewSlot and MethodAttributes.HideBySig.

svn path=/trunk/mcs/; revision=1194

22 years ago2001-10-22 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Mon, 22 Oct 2001 12:27:45 +0000 (12:27 -0000)]
2001-10-22  Ravi Pratap  <ravi@ximian.com>

* makefile : New target 'verify' which uses the verifier to check
that executables produced by us are identical to the MS' produced ones.

* test-7.cs : Update to exercise more overloadable operators.

svn path=/trunk/mcs/; revision=1193

22 years agoMon Oct 22 15:20:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Mon, 22 Oct 2001 09:24:31 +0000 (09:24 -0000)]
Mon Oct 22 15:20:14 CEST 2001 Paolo Molaro <lupus@ximian.com>

* x86/tramp.c: handle boolean, u1 and i1 as return values.

svn path=/trunk/mono/; revision=1192

22 years agoFlush pending work
Miguel de Icaza [Mon, 22 Oct 2001 00:38:33 +0000 (00:38 -0000)]
Flush pending work

svn path=/trunk/mcs/; revision=1191

22 years agoAdd indexer test, does not work yet
Miguel de Icaza [Sun, 21 Oct 2001 17:00:24 +0000 (17:00 -0000)]
Add indexer test, does not work yet

svn path=/trunk/mcs/; revision=1190

22 years agoquick flush
Miguel de Icaza [Sun, 21 Oct 2001 16:52:36 +0000 (16:52 -0000)]
quick flush

svn path=/trunk/mcs/; revision=1189

22 years ago2001-10-21 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Sun, 21 Oct 2001 10:11:36 +0000 (10:11 -0000)]
2001-10-21  Ravi Pratap  <ravi@ximian.com>

* interface.cs (FindMembers): Implement to work around S.R.E
lameness.

* typemanager.cs (IsInterfaceType): Implement.

(FindMembers): Update to handle interface types too.

* expression.cs (ImplicitReferenceConversion): Re-write bits which
use IsAssignableFrom as that is not correct - it doesn't work.

* delegate.cs (DelegateInvocation): Derive from ExpressionStatement
and accordingly override EmitStatement.

* expression.cs (ConvertReferenceExplicit): Re-write similary, this time
using the correct logic :-)

svn path=/trunk/mcs/; revision=1188

22 years ago2001-10-21 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Sun, 21 Oct 2001 10:07:17 +0000 (10:07 -0000)]
2001-10-21  Ravi Pratap  <ravi@ximian.com>

* test-27.cs : Add to do various implicit and explicit
reference conversions.

* makefile : Update accordingly.

svn path=/trunk/mcs/; revision=1187

22 years agoFlush
Miguel de Icaza [Sat, 20 Oct 2001 21:47:40 +0000 (21:47 -0000)]
Flush

svn path=/trunk/mcs/; revision=1186

22 years ago2001-10-17 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sat, 20 Oct 2001 21:22:56 +0000 (21:22 -0000)]
2001-10-17  Miguel de Icaza  <miguel@ximian.com>

* assign.cs (Assign::Resolve): Resolve right hand side first, and
then pass this as a hint to ResolveLValue.

* expression.cs (FieldExpr): Add Location information

(FieldExpr::LValueResolve): Report assignment to readonly
variable.

(Expression::ExprClassFromMemberInfo): Pass location information.

(Expression::ResolveLValue): Add new method that resolves an
LValue.

(Expression::DoResolveLValue): Default invocation calls
DoResolve.

(Indexers): New class used to keep track of indexers in a given
Type.

(IStackStore): Renamed from LValue, as it did not really describe
what this did.  Also ResolveLValue is gone from this interface and
now is part of Expression.

(ElementAccess): Depending on the element access type

* typemanager.cs: Add `indexer_name_type' as a Core type
(System.Runtime.CompilerServices.IndexerNameAttribute)

* statement.cs (Goto): Take a location.

svn path=/trunk/mcs/; revision=1185

22 years agomore tests for parsing and ToString
Martin Weindel [Sat, 20 Oct 2001 17:02:05 +0000 (17:02 -0000)]
more tests for parsing and ToString

svn path=/trunk/mcs/; revision=1184

22 years agorefactoring, ToString completed
Martin Weindel [Sat, 20 Oct 2001 17:00:59 +0000 (17:00 -0000)]
refactoring, ToString completed

svn path=/trunk/mcs/; revision=1183

22 years agoAdd file to demonstrate error -11
Ravi Pratap M [Fri, 19 Oct 2001 08:55:19 +0000 (08:55 -0000)]
Add file to demonstrate error -11

svn path=/trunk/mcs/; revision=1182

22 years agoSystem.CodeDom.*: Missing namespace declarations
Sean MacIsaac [Thu, 18 Oct 2001 15:07:08 +0000 (15:07 -0000)]
System.CodeDom.*: Missing namespace declarations

System.build: Fixed clean target

System.XML.build: Output changed to System.Xml.dll not from System.XML

corlib.build: More things excluded from testing corlib

HashtableTest.cs: Don't print extra debug info during tests

Windows.cs: Added code to read/write/open/close files

svn path=/trunk/mcs/; revision=1181

22 years ago2001-10-18 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Thu, 18 Oct 2001 12:34:51 +0000 (12:34 -0000)]
2001-10-18  Ravi Pratap  <ravi@ximian.com>

* delegate.cs (Delegate::VerifyDelegate): New method to verify
if two delegates are compatible.

(NewDelegate::DoResolve): Update to take care of the case when
we instantiate a delegate from another delegate.

* typemanager.cs (FindMembers): Don't even try to look up members
of Delegate types for now.

svn path=/trunk/mcs/; revision=1180

22 years ago2001-10-18 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Thu, 18 Oct 2001 12:32:07 +0000 (12:32 -0000)]
2001-10-18  Ravi Pratap  <ravi@ximian.com>

* test-26.cs : Update to test delegate creation from another
delegate.

svn path=/trunk/mcs/; revision=1179

22 years ago2001-10-18 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Thu, 18 Oct 2001 07:01:43 +0000 (07:01 -0000)]
2001-10-18  Ravi Pratap  <ravi@ximian.com>

* delegate.cs (NewDelegate): New class to take care of delegate
instantiation.

* expression.cs (New): Split the delegate related code out into
the NewDelegate class.

* delegate.cs (DelegateInvocation): New class to handle delegate
invocation.

* expression.cs (Invocation): Split out delegate related code into
the DelegateInvocation class.

svn path=/trunk/mcs/; revision=1178

22 years agoModify to make a little more verbose :-)
Ravi Pratap M [Thu, 18 Oct 2001 06:58:42 +0000 (06:58 -0000)]
Modify to make a little more verbose :-)

svn path=/trunk/mcs/; revision=1177

22 years agoGot nunit tests running in windows. Reorganized Test case directories.
Sean MacIsaac [Wed, 17 Oct 2001 17:36:04 +0000 (17:36 -0000)]
Got nunit tests running in windows.  Reorganized Test case directories.

svn path=/trunk/mcs/; revision=1176

22 years ago2001-10-17 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Wed, 17 Oct 2001 09:25:26 +0000 (09:25 -0000)]
2001-10-17  Ravi Pratap  <ravi@ximian.com>

* expression.cs (New::DoResolve): Implement delegate creation fully
and according to the spec.

(New::DoEmit): Update to handle delegates differently.

(Invocation::FullMethodDesc): Fix major stupid bug thanks to me
because of which we were printing out arguments in reverse order !

* delegate.cs (VerifyMethod): Implement to check if the given method
matches the delegate.

(FullDelegateDesc): Implement.

(VerifyApplicability): Implement.

* expression.cs (Invocation::DoResolve): Update to accordingly handle
delegate invocations too.

(Invocation::Emit): Ditto.

* ../errors/cs1593.cs : Added.

* ../errors/cs1594.cs : Added.

* delegate.cs (InstanceExpression, TargetMethod): New properties.

2001-10-16  Ravi Pratap  <ravi@ximian.com>

* typemanager.cs (intptr_type): Core type for System.IntPtr

(InitCoreTypes): Update for the same.

(iasyncresult_type, asynccallback_type): Ditto.

* delegate.cs (Populate): Fix to use System.Intptr as it is indeed
correct.

* typemanager.cs (AddDelegateType): Store a pointer to the Delegate class
too.

* delegate.cs (ConstructorBuilder, InvokeBuilder, ...): New members to hold
the builders for the 4 members of a delegate type :-)

(Populate): Define the BeginInvoke and EndInvoke methods on the delegate
type.

* expression.cs (New::DoResolve): Implement guts for delegate creation.

* ../errors/errors.txt : Update for an error (-11) which only we catch :-)

svn path=/trunk/mcs/; revision=1175

22 years ago2001-10-17 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Wed, 17 Oct 2001 09:21:11 +0000 (09:21 -0000)]
2001-10-17  Ravi Pratap  <ravi@ximian.com>

* test-26.cs : Added to demonstrate delegate support.

svn path=/trunk/mcs/; revision=1174

22 years agoAdd files for delegate related errors.
Ravi Pratap M [Wed, 17 Oct 2001 09:20:07 +0000 (09:20 -0000)]
Add files for delegate related errors.

svn path=/trunk/mcs/; revision=1173

22 years agoclass.c (mono_class_create_from_typeref): added debugging output
Sean MacIsaac [Wed, 17 Oct 2001 03:58:33 +0000 (03:58 -0000)]
class.c (mono_class_create_from_typeref): added debugging output
to print class name when MonoDummy is returned instead of real class

svn path=/trunk/mono/; revision=1172

22 years agoAdded stub classes/methods needed by compiler in an attempt to get it
Sean MacIsaac [Wed, 17 Oct 2001 03:54:01 +0000 (03:54 -0000)]
Added stub classes/methods needed by compiler in an attempt to get it
to run in Linux.

svn path=/trunk/mcs/; revision=1171

22 years agoAdd IndexerNameAttribute
Miguel de Icaza [Wed, 17 Oct 2001 01:51:30 +0000 (01:51 -0000)]
Add IndexerNameAttribute

svn path=/trunk/mcs/; revision=1170

22 years ago2001-10-15 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Tue, 16 Oct 2001 00:57:41 +0000 (00:57 -0000)]
2001-10-15  Miguel de Icaza  <miguel@ximian.com>

* statement.cs (Break::Emit): Implement.
(Continue::Emit): Implement.

(For::Emit): Track old being/end loops;  Set Begin loop, ack end loop
(While::Emit): Track old being/end loops;  Set Begin loop, ack end loop
(Do::Emit): Track old being/end loops;  Set Begin loop, ack end loop
(Foreach::Emit): Track old being/end loops;  Set Begin loop, ack
end loop

* codegen.cs (EmitContext::LoopEnd, EmitContext::LoopBegin): New
properties that track the label for the current loop (begin of the
loop and end of the loop).

svn path=/trunk/mcs/; revision=1169

22 years agoUPdated
Miguel de Icaza [Mon, 15 Oct 2001 22:03:43 +0000 (22:03 -0000)]
UPdated

svn path=/trunk/mono/; revision=1168

22 years ago2001-10-15 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Mon, 15 Oct 2001 14:41:52 +0000 (14:41 -0000)]
2001-10-15  Ravi Pratap  <ravi@ximian.com>

* delegate.cs (Emit): Get rid of it as there doesn't seem to be any ostensible
use of emitting anything at all.

* class.cs, rootcontext.cs : Get rid of calls to the same.

* delegate.cs (DefineDelegate): Make sure the class we define is also sealed.

(Populate): Define the constructor correctly and set the implementation
attributes.

* typemanager.cs (delegate_types): New hashtable to hold delegates that
have been defined.

(AddDelegateType): Implement.

(IsDelegateType): Implement helper method.

* delegate.cs (DefineDelegate): Use AddDelegateType instead of AddUserType.

* expression.cs (New::DoResolve): Check if we are trying to instantiate a delegate type
and accordingly handle it.

* delegate.cs (Populate): Take TypeContainer argument.
Implement bits to define the Invoke method. However, I still haven't figured out
how to take care of the native int bit :-(

* cs-parser.jay (delegate_declaration): Fixed the bug that I had introduced :-)
Qualify the name of the delegate, not its return type !

* expression.cs (ImplicitReferenceConversion): Implement guts of implicit array
conversion.

(StandardConversionExists): Checking for array types turns out to be recursive.

(ConvertReferenceExplicit): Implement array conversion.

(ExplicitReferenceConversionExists): New method to determine precisely that :-)

2001-10-12  Ravi Pratap  <ravi@ximian.com>

* cs-parser.jay (delegate_declaration): Store the fully qualified
name as it is a type declaration.

* delegate.cs (ReturnType, Name): Rename members to these. Make them
readonly.

(DefineDelegate): Renamed from Define. Does the same thing essentially,
as TypeContainer::DefineType.

(Populate): Method in which all the definition of the various methods (Invoke)
etc is done.

(Emit): Emit any code, if necessary. I am not sure about this really, but let's
see.

(CloseDelegate): Finally creates the delegate.

* class.cs (TypeContainer::DefineType): Update to define delegates.
(Populate, Emit and CloseType): Do the same thing here too.

* rootcontext.cs (ResolveTree, PopulateTypes, EmitCode, CloseTypes): Include
delegates in all these operations.

svn path=/trunk/mcs/; revision=1167

22 years ago2001-10-15 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Mon, 15 Oct 2001 09:50:03 +0000 (09:50 -0000)]
2001-10-15  Dietmar Maurer  <dietmar@ximian.com>

* class.c (mono_class_metadata_init): interface offset table now
contains pointers into the vtable - this is more efficient for the jit

* class.c (mono_class_metadata_init): use a temporary vtable (the
old algorithm only worked for the interpreter, but not for the jit)

* loader.c (method_from_memberref): use mono_class_get to get the
class of an array instead of using System.Array directly.
(mono_get_method): also add MEMBERREF methods to the method cache
which usefull for arrays.

* pedump.c (arch_compile_method): added to compute vtable entry

* interp.c: removed newobj()

* interp.c (get_virtual_method): use the vtable
(arch_compile_method): added to compute vtable entry

* x86.brg: added some experimental code for CALL
instructions - still not found the optimal way to do it.

* testjit.c (map_stind_type): add support for value types with
a size of 1, 2 or 4 bytes, implemented CEE_UNBOX, CEE_LDOBJ,
CEE_LDSTR, CEE_LDFLD, CEE_LDFLDA, CEE_STFLD, CEE_NEWOBJ, CEE_CEQ
(ctree_create_newobj): impl.

* emit-x86.c (tree_allocate_regs): removed allocation code for
addr nonterminal.
(get_address): use a simple, but bug free search instead of the
buggy binary search.

* testjit.c: support virtual functions

svn path=/trunk/mono/; revision=1166

22 years ago2001-10-14 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Mon, 15 Oct 2001 00:03:43 +0000 (00:03 -0000)]
2001-10-14  Miguel de Icaza  <miguel@ximian.com>

* expression.cs: LocalTemporary: a new expression used to
reference a temporary that has been created.

* assign.cs: Handle PropertyAccess back here, so that we can
provide the proper semantic access to properties.

svn path=/trunk/mcs/; revision=1165

22 years ago2001-10-14 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Sun, 14 Oct 2001 22:30:14 +0000 (22:30 -0000)]
2001-10-14  Miguel de Icaza  <miguel@ximian.com>

* expression.cs (Expression::ConvertReferenceExplicit): Implement
a few more explicit conversions.

* modifiers.cs: `NEW' modifier maps to HideBySig.

* expression.cs (PropertyExpr): Make this into an
ExpressionStatement, and support the EmitStatement code path.

Perform get/set error checking, clean up the interface.

* assign.cs: recognize PropertyExprs as targets, and if so, turn
them into toplevel access objects.

svn path=/trunk/mcs/; revision=1164

22 years agoadded Martin Weindel
Martin Weindel [Sun, 14 Oct 2001 18:36:09 +0000 (18:36 -0000)]
added Martin Weindel

svn path=/trunk/mono/; revision=1163

22 years agoadded entry for System.Decimal
Martin Weindel [Sun, 14 Oct 2001 18:35:06 +0000 (18:35 -0000)]
added entry for System.Decimal

svn path=/trunk/mono/; revision=1162

22 years agoTests for System.Decimal
Martin Weindel [Sun, 14 Oct 2001 18:28:54 +0000 (18:28 -0000)]
Tests for System.Decimal

svn path=/trunk/mcs/; revision=1161

22 years ago*** empty log message ***
Martin Weindel [Sun, 14 Oct 2001 18:27:32 +0000 (18:27 -0000)]
*** empty log message ***

svn path=/trunk/mcs/; revision=1160

22 years agoadded Decimal.cs and DecimalFormatter.cs
Martin Weindel [Sun, 14 Oct 2001 18:26:04 +0000 (18:26 -0000)]
added Decimal.cs and DecimalFormatter.cs

svn path=/trunk/mcs/; revision=1159

22 years ago2001-10-12 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Fri, 12 Oct 2001 18:52:18 +0000 (18:52 -0000)]
2001-10-12  Miguel de Icaza  <miguel@ximian.com>

* expression.cs: PropertyExpr::PropertyExpr: use work around the
SRE.

* typemanager.cs: Keep track here of our PropertyBuilders again to
work around lameness in SRE.

svn path=/trunk/mcs/; revision=1158

22 years ago2001-10-11 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Fri, 12 Oct 2001 14:18:21 +0000 (14:18 -0000)]
2001-10-11  Miguel de Icaza  <miguel@ximian.com>

* expression.cs (LValue::LValueResolve): New method in the
interface, used to perform a second resolution pass for LValues.

(This::DoResolve): Catch the use of this in static methods.

(This::LValueResolve): Implement.

(This::Store): Remove warning, assigning to `this' in structures
is

svn path=/trunk/mcs/; revision=1157

22 years agoMake it compile
Miguel de Icaza [Fri, 12 Oct 2001 14:13:12 +0000 (14:13 -0000)]
Make it compile

svn path=/trunk/mcs/; revision=1156

22 years ago2001-10-12 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Fri, 12 Oct 2001 11:28:02 +0000 (11:28 -0000)]
2001-10-12  Ravi Pratap  <ravi@ximian.com>

* test-21.cs : Update to actually do some checking and return
an appropriate value.

svn path=/trunk/mcs/; revision=1155

22 years agoFixed test cases.
Paolo Molaro [Fri, 12 Oct 2001 10:32:09 +0000 (10:32 -0000)]
Fixed test cases.

svn path=/trunk/mono/; revision=1154

22 years agoAdd more tests
Miguel de Icaza [Fri, 12 Oct 2001 01:24:02 +0000 (01:24 -0000)]
Add more tests

svn path=/trunk/mcs/; revision=1153

22 years agoadded StringTest.cs
Jeffrey Stedfast [Thu, 11 Oct 2001 23:27:11 +0000 (23:27 -0000)]
added StringTest.cs

svn path=/trunk/mcs/; revision=1152

22 years ago2001-10-11 Jeffrey Stedfast <fejj@ximian.com>
Jeffrey Stedfast [Thu, 11 Oct 2001 23:26:24 +0000 (23:26 -0000)]
2001-10-11  Jeffrey Stedfast  <fejj@ximian.com>

* System/StringTest.cs: Added.

svn path=/trunk/mcs/; revision=1151

22 years agoAdding tests for the basic integer structs
Mario Carrion [Thu, 11 Oct 2001 18:56:17 +0000 (18:56 -0000)]
Adding tests for the basic integer structs

svn path=/trunk/mcs/; revision=1150