mono.git
22 years agoFri Nov 9 15:48:02 CET 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Fri, 9 Nov 2001 10:53:55 +0000 (10:53 -0000)]
Fri Nov 9 15:48:02 CET 2001 Paolo Molaro <lupus@ximian.com>

* icall.c, decimal.h, decimal.c: integrated decimal internalcalls
from Martin Weindel.
* object.h: add mono_string_chars ().

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

22 years ago2001:11:09 Gaurav Vaish <gvaish@iitk.ac.in>
Gaurav Vaish [Fri, 9 Nov 2001 09:13:16 +0000 (09:13 -0000)]
2001:11:09 Gaurav Vaish <gvaish@iitk.ac.in>

* UrlUtils      completed MakeRelative, added GetDirectory

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

22 years ago2001-11-09 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Fri, 9 Nov 2001 06:28:41 +0000 (06:28 -0000)]
2001-11-09  Dietmar Maurer  <dietmar@ximian.com>

* testjit.c (mono_analyze_stack): finished array support

2001-11-08  Dietmar Maurer  <dietmar@ximian.com>

* testjit.c (MAKE_STELEM, MAKE_LDELEM): we build a tree which
represents the address of the element. This way we can emit highly
optimized x86 instructions to access elements (using base+index+offset
adressing mode)

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

22 years agooops. remove printfs
Miguel de Icaza [Fri, 9 Nov 2001 03:08:30 +0000 (03:08 -0000)]
oops.  remove printfs

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

22 years ago2001-11-09 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Fri, 9 Nov 2001 02:54:38 +0000 (02:54 -0000)]
2001-11-09  Miguel de Icaza  <miguel@ximian.com>

* cs-parser.jay: A for_initializer if is a
local_variable_declaration really ammount to have an implicit
block with the variable declaration and no initializer for for.

* statement.cs (For.Emit): Cope with null initializers.

This fixes the infinite loop on for initializers.

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

22 years ago2001:11:09 Gaurav Vaish <gvaish@iitk.ac.in>
Gaurav Vaish [Fri, 9 Nov 2001 02:33:00 +0000 (02:33 -0000)]
2001:11:09      Gaurav Vaish <gvaish@iitk.ac.in>

* UrlUtils.cs   Added the following functions:

             GetProtocol(string) -> Returns the protocol used (before ://)
             IsRootUrl(string)   -> Is the url supplied is RootUrl
             IsValidProtocol(string)
                                 -> Can the protocol represent a valid protocol
             RegionMatches(...)  -> Matches an inner part of a string

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

22 years agoFew changes for RC1
Miguel de Icaza [Thu, 8 Nov 2001 23:38:22 +0000 (23:38 -0000)]
Few changes for RC1

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

22 years agoFew changes for RC1
Miguel de Icaza [Thu, 8 Nov 2001 23:38:22 +0000 (23:38 -0000)]
Few changes for RC1

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

22 years agoFlush ChangeLog
Miguel de Icaza [Thu, 8 Nov 2001 22:41:19 +0000 (22:41 -0000)]
Flush ChangeLog

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

22 years ago2001-11-07 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Thu, 8 Nov 2001 21:38:32 +0000 (21:38 -0000)]
2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* x86/tramp.c: Include stdlib to kill warning.

2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* main.c (dis_property_methods): Added missing colon which avoided
setting loc.t

2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* interp.c: Include stdlib to kill warning.
(check_corlib): Adjust format encodings to remove warnings.

2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* reflection.c (build_compressed_metadata): Eliminates warnings
and uses 64-bit clean code.

* metadata.c (mono_type_hash): Change signature to eliminate warnings.
(mono_type_equal): Change signature to eliminate warnings.

2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* monoburg.y: Include string.h, stdlib.h to kill warnings.

* sample.brg: Include string.h to remove warnings.

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

22 years ago2001-11-08 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Thu, 8 Nov 2001 16:55:38 +0000 (16:55 -0000)]
2001-11-08  Miguel de Icaza  <miguel@ximian.com>

* ecore.cs: Remove dead code.

* class.cs (Property.Emit): More simplification.

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

22 years ago2001-11-08 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Thu, 8 Nov 2001 16:21:43 +0000 (16:21 -0000)]
2001-11-08  Miguel de Icaza  <miguel@ximian.com>

* class.cs (Property.Emit): More simplification.

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

22 years ago2001-11-08 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Thu, 8 Nov 2001 15:47:10 +0000 (15:47 -0000)]
2001-11-08  Miguel de Icaza  <miguel@ximian.com>

* class.cs: Reworked to have less levels of indentation.

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

22 years agoRemove the dlls, that was lame
Miguel de Icaza [Thu, 8 Nov 2001 13:38:25 +0000 (13:38 -0000)]
Remove the dlls, that was lame

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

22 years ago2001-11-08 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Thu, 8 Nov 2001 13:35:45 +0000 (13:35 -0000)]
2001-11-08  Ravi Pratap  <ravi@ximian.com>

* class.cs (Property): Emit attributes.

(Field): Ditto.

(Event): Ditto.

(Indexer): Ditto.

(Operator): Ditto.

* enum.cs (Emit): Ditto.

* rootcontext.cs (ResolveTree, EmitCode, CloseTypes): Do the same for
Enums too.

* class.cs (Field, Event, etc.): Move attribute generation into the
Emit method everywhere.

* enum.cs (Enum): Revamp to use the same definition semantics as delegates so
we have a DefineEnum, CloseEnum etc. The previous way of doing things was not right
as we had no way of defining nested enums !

* rootcontext.cs : Adjust code accordingly.

* typemanager.cs (AddEnumType): To keep track of enum types separately.

2001-11-07  Ravi Pratap  <ravi@ximian.com>

* expression.cs (EvalConstantExpression): Move into ecore.cs

* enum.cs (Enum): Rename some members and make them public and readonly
according to our convention.

* modifiers.cs (EnumAttr): Implement as we need to set only visibility flags,
nothing else.

* enum.cs (Enum::Define): Use the above instead of TypeAttr.

(Enum::Emit): Write a simple version for now which doesn't try to compute
expressions. I shall modify this to be more robust in just a while.

* class.cs (TypeContainer::Emit): Make sure we include Enums too.

(TypeContainer::CloseType): Create the Enum types too.

* attribute.cs (Resolve): Use the new Reduce method instead of EvalConstantExpression.

* expression.cs (EvalConstantExpression): Get rid of completely.

* enum.cs (Enum::Emit): Use the new expression reducer. Implement assigning
user-defined values and other cases.

(IsValidEnumLiteral): Helper function.

* expression.cs (ExprClassfromMemberInfo): Modify to not do any literalizing
out there in the case we had a literal FieldExpr.

(MemberAccess:DoResolve): Do the literalizing of the FieldExpr here.

(Literalize): Revamp a bit to take two arguments.

(EnumLiteral): New class which derives from Literal to wrap enum literals.

2001-11-06  Ravi Pratap  <ravi@ximian.com>

* cs-parser.jay (compilation_unit): Remove extra opt_attributes for now.

* expression.cs (ArrayCreation::ValidateInitializers): Implement.

(Resolve): Use the above to ensure we have proper initializers.

2001-11-05  Ravi Pratap  <ravi@ximian.com>

* expression.cs (Expression::EvalConstantExpression): New method to
evaluate constant expressions.

* attribute.cs (Attribute::Resolve): Modify bits to use the above function.

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

22 years ago2001-11-08 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Thu, 8 Nov 2001 13:30:53 +0000 (13:30 -0000)]
2001-11-08  Ravi Pratap  <ravi@ximian.com>

* test-39.cs : Add

* test-40.cs : Add

* makefile : Modify to include the above as they pass all tests.

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

22 years ago2001-11-09 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Thu, 8 Nov 2001 11:35:50 +0000 (11:35 -0000)]
2001-11-09  Nick Drochak  <ndrochak@gol.com>

* makefile(s): add 'test' target, so now you can do 'make test'
and something useful will happen.

* *.build: link NUnit test dll's with the mono assembly they are
supposed to test, and suppress 1595 warnings.

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

22 years ago2001-11-08 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Thu, 8 Nov 2001 11:10:19 +0000 (11:10 -0000)]
2001-11-08  Nick Drochak  <ndrochak@gol.com>

* corlib_test.build: Include test for Queue in the dll

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

22 years agoCreated freshly looking WebControl.cs
Gaurav Vaish [Thu, 8 Nov 2001 09:52:45 +0000 (09:52 -0000)]
Created freshly looking WebControl.cs

Now playing with AdRotator.cs

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

22 years ago2001-11-08 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Thu, 8 Nov 2001 06:14:03 +0000 (06:14 -0000)]
2001-11-08 Nick Drochak <ndrochak@gol.com>

* corlib.build: put /norwarn in for 0169 and 0649 since most of the
classes have unused fields, but it's really an problem right now
because we know the class isn't finished.  'make' should be a lot
quieter now!

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

22 years ago2001-11-08 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Thu, 8 Nov 2001 06:07:08 +0000 (06:07 -0000)]
2001-11-08 Nick Drochak <ndrochak@gol.com>

* README: Explanation of the dll's which are built and what
directories the go in.

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

22 years agoAdd more tests
Miguel de Icaza [Thu, 8 Nov 2001 00:17:45 +0000 (00:17 -0000)]
Add more tests

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

22 years ago2001-11-07 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Thu, 8 Nov 2001 00:17:29 +0000 (00:17 -0000)]
2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* expression.cs (ArrayCreation.Emit): Some bits to initialize data
in an array.

(Binary.ResolveOperator): Handle operator != (object a, object b)
and operator == (object a, object b);

(Binary.DoNumericPromotions): Indicate whether the numeric
promotion was possible.

(ArrayAccess.DoResolve, ArrayAccess.Emit, ArrayAccess.EmitAssign):
Implement.

Made the ArrayAccess implement interface IAssignMethod instead of
IStackStore as the order in which arguments are passed reflects
this.

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

22 years ago2001-11-08 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Wed, 7 Nov 2001 23:29:11 +0000 (23:29 -0000)]
2001-11-08 Nick Drochak <ndrochak@gol.com>

* corlib.build: build a corlib that can be linked against the nunit
test dll's when linux is the target (just like windows).

Added /nowarn 0649 and 0169 to cut down on the compiler noise for
all the unused fields we have in the stubs.

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

22 years agoAdd a new test that we fail to pass
Miguel de Icaza [Wed, 7 Nov 2001 13:33:25 +0000 (13:33 -0000)]
Add a new test that we fail to pass

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

22 years agoWed Nov 7 15:40:01 CET 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Wed, 7 Nov 2001 11:02:31 +0000 (11:02 -0000)]
Wed Nov 7 15:40:01 CET 2001 Paolo Molaro <lupus@ximian.com>

* icall.c, loader.c: remove the internalcall array constructors.
Changes to match the new MonoArray structure.
* object.h, object.c: an array object doesn't allocate an extra
vector. Add mono_array_new_full () to create jagged arrays easily.

Mon Nov 5 19:51:06 CET 2001 Paolo Molaro <lupus@ximian.com>

* metadata.h, metadata.c: add mono_metadata_field_info () to
retreive all the info about a field from vairous tables.
* icall.c: implement S.Runtime.CServices::InitializeArray () icall.
* class.h, class.c: augment MonoClassField with more info.
Implemented mono_ldtoken for fields. Implemented ExplicitLayout
policy and load a field's RVA if needed.

Wed Nov 7 15:47:36 CET 2001 Paolo Molaro <lupus@ximian.com>

* interp.c: updates for changes in array code.

Fri Nov 2 19:06:54 CET 2001 Paolo Molaro <lupus@ximian.com>

* interp.c: hanlde field refs. Throw an exception on NULL references.
Check consistency of corlib types with the C struct representation.

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

22 years agoForgot to actually commit the test cases...
Paolo Molaro [Wed, 7 Nov 2001 07:42:46 +0000 (07:42 -0000)]
Forgot to actually commit the test cases...

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

22 years ago2001-11-07 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Wed, 7 Nov 2001 06:33:48 +0000 (06:33 -0000)]
2001-11-07  Dietmar Maurer  <dietmar@ximian.com>

* emit-x86.c (enter_method): print out all method arguments
(x86_magic_trampoline): impl.
(arch_create_simple_jit_trampoline): we use different trampolines
for static methods (no need to write the address back into to
vtable).

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

22 years ago2001-11-07 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Wed, 7 Nov 2001 05:40:16 +0000 (05:40 -0000)]
2001-11-07  Miguel de Icaza  <miguel@ximian.com>

* expression.cs (ArrayCreation.Emit): Some bits to initialize data
in an array.

* typemanager.cs: Load InitializeArray definition.

* rootcontext.cs (RootContext.MakeStaticData): Used to define
static data that can be used to initialize arrays.

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

22 years agoAdded files:
Gaurav Vaish [Tue, 6 Nov 2001 17:43:44 +0000 (17:43 -0000)]
Added files:
CalendarDay.cs
CheckBox.cs
DayRenderEventHandler.cs

Changing:
WebControl.cs

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

22 years agoAdd test for !bool optimization; Make linux build the only one
Miguel de Icaza [Tue, 6 Nov 2001 16:17:02 +0000 (16:17 -0000)]
Add test for !bool optimization;  Make linux build the only one

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

22 years ago2001-11-05 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Tue, 6 Nov 2001 16:14:58 +0000 (16:14 -0000)]
2001-11-05  Miguel de Icaza  <miguel@ximian.com>

* expression.cs: Handle operator== and operator!= for booleans.

(Conditioal.Reduce): Implement reducer for the ?: operator.

(Conditional.Resolve): Implement dead code elimination.

(Binary.Resolve): Catch string literals and return a new
concatenated string.

(Unary.Reduce): Implement reduction of unary expressions.

* ecore.cs: Split out the expression core handling here.

(Expression.Reduce): New method used to perform constant folding
and CSE.  This is needed to support constant-expressions.

* statement.cs (Statement.EmitBoolExpression): Pass true and false
targets, and optimize for !x.

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

22 years ago2001-11-06 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Tue, 6 Nov 2001 09:46:18 +0000 (09:46 -0000)]
2001-11-06  Dietmar Maurer  <dietmar@ximian.com>

* emit-x86.c (arch_create_jit_trampoline): optimised trampoline to
use less the 16 bytes.

* x86.brg: code cleanup

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

22 years ago * corlib.build: remove AppDomain.cs from the corlib_res.dll.
Paolo Molaro [Tue, 6 Nov 2001 06:50:13 +0000 (06:50 -0000)]
* corlib.build: remove AppDomain.cs from the corlib_res.dll.

Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>

* AppDomain.cs: use an internal constructor for AssemblyBuilder.

Tue Nov 6 09:13:45 CET 2001 Paolo Molaro <lupus@ximian.com>

* AssemblyBuilder.cs: define an internal constructor.

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

22 years agoMon Nov 5 19:50:11 CET 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Tue, 6 Nov 2001 03:55:51 +0000 (03:55 -0000)]
Mon Nov 5 19:50:11 CET 2001 Paolo Molaro <lupus@ximian.com>

* RuntimeHelpers.cs: make InitializeArray an internalcall.

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

22 years ago2001-11-06 Nick Drochak <ndrochak@gol.com>
Nick Drochak [Mon, 5 Nov 2001 18:33:44 +0000 (18:33 -0000)]
2001-11-06 Nick Drochak <ndrochak@gol.com>
* Queue.cs: Fixes from Ricardardo.  QueueTest also updated.

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

22 years agoNews update
Miguel de Icaza [Mon, 5 Nov 2001 13:31:19 +0000 (13:31 -0000)]
News update

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

22 years agoAdd runtime
Miguel de Icaza [Mon, 5 Nov 2001 13:25:18 +0000 (13:25 -0000)]
Add runtime

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

22 years ago2001-11-05 Miguel de Icaza <miguel@ximian.com>
Miguel de Icaza [Mon, 5 Nov 2001 13:16:01 +0000 (13:16 -0000)]
2001-11-05  Miguel de Icaza  <miguel@ximian.com>

* NonSerializedAttribute.cs: Add AttributeUsage rules for this
attribute.

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

22 years agoUntil the code gets fixed
Miguel de Icaza [Mon, 5 Nov 2001 13:15:57 +0000 (13:15 -0000)]
Until the code gets fixed

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

22 years ago2001-11-05 Dietmar Maurer <dietmar@ximian.com>
Dietmar Maurer [Mon, 5 Nov 2001 11:31:20 +0000 (11:31 -0000)]
2001-11-05  Dietmar Maurer  <dietmar@ximian.com>

* testjit.c: bug fixes.

* emit-x86.c (leave_method): print result values

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

22 years agoFlush pending changes I got from a contributor that did not put his name in
Miguel de Icaza [Mon, 5 Nov 2001 07:10:08 +0000 (07:10 -0000)]
Flush pending changes I got from a contributor that did not put his name in

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

22 years agoFri Nov 2 19:06:54 CET 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Mon, 5 Nov 2001 06:22:05 +0000 (06:22 -0000)]
Fri Nov 2 19:06:54 CET 2001 Paolo Molaro <lupus@ximian.com>

* interp.c: hanlde field refs. Throw an exception on NULL references.
Check consistency of corlib types with the C struct representation.

Fri Nov 2 19:37:51 CET 2001 Paolo Molaro <lupus@ximian.com>

* class.h, class.c: include name in MonoClassField.
* class.c: fix fundamental type of System.Object and System.String.
Set the right fundamental type for SZARRAY, too. Handle TypeSpec
tokens in ldtoken.
* icall.c: remove internalcalls for the Reflection stuff that is now
done in C# code.
* loader.c: mono_field_from_memberref () implementation.
* mono-endian.c: thinko (s/struct/union/g).
* object.c, object.h: make the mono_string_* prototypes actually use
MonoString instead of MonoObject.
* reflection.c, reflection.h: updates for changes in the reflection
code in corlib: we use C structures that map to the actual C# classes.
Handle SZARRAYs when encoding types. Handle locals in methods. Use a
fat method header if needed and use the info from the ILGenerator for
methods. Handle fields in types. Misc fixes.

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

22 years agoFri Nov 2 18:40:12 CET 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Mon, 5 Nov 2001 06:20:27 +0000 (06:20 -0000)]
Fri Nov 2 18:40:12 CET 2001 Paolo Molaro <lupus@ximian.com>

* SerializationException.cs: implemented.

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

22 years agoFri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
Paolo Molaro [Mon, 5 Nov 2001 06:18:33 +0000 (06:18 -0000)]
Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>

* String.cs: fix a couple of bugs.
* AppDomain.cs: use new AppBuilder constructor.
* Buffer.cs, GC.cs, NonSerializedAttribute.cs,
NotImplementedException.cs, ObjectDisposedException.cs,
UnauthorizedAccessException.cs: add implementation.
* OverflowException.cs: fix class name.

Fri Nov 2 18:29:36 CET 2001 Paolo Molaro <lupus@ximian.com>

* AmbiguousMatchException.cs,
* Assembly.cs, Module.cs: updates.
* FieldInfo.cs: better compliance to the spec.
* MethodBase.cs: move call_conv out of the way.
* AssemblyBuilder.cs:  don't use internalcalls, more stuff supported.
* FieldBuilder.cs: implemented.
* ILGenerator.cs: implemented some opcode handling.
* Label.cs: add constructor.
* LocalBuilder.cs: implemented.
* MethodBuilder.cs: don't use internalcalls, more implemented stuff.
* ModuleBuilder.cs: don't use internalcalls, more meat here, too.
* ParameterBuilder.cs: implemented.
* PropertyBuilder.cs: implemented.
* TypeBuilder.cs: don't use internalcalls, more stuff working.

Fri Nov 2 18:27:58 CET 2001 Paolo Molaro <lupus@ximian.com>

* DirectoryNotFoundException.cs: implemented.

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

22 years agoMore Updates from Guarav
Miguel de Icaza [Mon, 5 Nov 2001 06:11:37 +0000 (06:11 -0000)]
More Updates from Guarav

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

22 years agoUpdates from Guarav
Miguel de Icaza [Mon, 5 Nov 2001 06:10:55 +0000 (06:10 -0000)]
Updates from Guarav

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

22 years ago2001-11-04 Ravi Pratap <ravi@ximian.com>
Ravi Pratap M [Mon, 5 Nov 2001 03:56:54 +0000 (03:56 -0000)]
2001-11-04  Ravi Pratap  <ravi@ximian.com>

* attribute.cs (Attribute::Resolve): Implement guts. Note that resolution
of an attribute gives us a CustomAttributeBuilder which we use accordingly to
set custom atttributes.

* literal.cs (Literal::GetValue): New abstract method to return the actual
value of the literal, cast as an object.

(*Literal): Implement GetValue method.

* cs-parser.jay (positional_argument_list, named_argument_list): Add not just plain
expressions to the arraylist but objects of type Argument.

* class.cs (TypeContainer::Emit): Emit our attributes too.

(Method::Emit, Constructor::Emit): Ditto.

* cs-parser.jay (constructor_declaration): Set attributes too, which we seemed
to be ignoring earlier.

2001-11-03  Ravi Pratap  <ravi@ximian.com>

* attribute.cs (AttributeSection::Define): Implement to do the business
of constructing a CustomAttributeBuilder.

(Attribute): New trivial class. Increases readability of code.

* cs-parser.jay : Update accordingly.

(positional_argument_list, named_argument_list, named_argument): New rules

(attribute_arguments): Use the above so that we are more correct.

2001-11-02  Ravi Pratap  <ravi@ximian.com>

* expression.cs (Invocation::IsParamsMethodApplicable): Implement
to perform all checks for a method with a params parameter.

(Invocation::OverloadResolve): Update to use the above method and therefore
cope correctly with params method invocations.

* support.cs (InternalParameters::ParameterDesc): Provide a desc for
params too.

* class.cs (ConstructorInitializer::Resolve): Make sure we look for Non-public
constructors in our parent too because we can't afford to miss out on
protected ones ;-)

* attribute.cs (AttributeSection): New name for the class Attribute

Other trivial changes to improve readability.

* cs-parser.jay (opt_attributes, attribute_section etc.): Modify to
use the new class names.

2001-11-01  Ravi Pratap  <ravi@ximian.com>

* class.cs (Method::Define): Complete definition for params types too

(Indexer::Define): Ditto.

* support.cs (InternalParameters::ParameterType, ParameterDesc, ParameterModifier):
Cope everywhere with a request for info about the array parameter.

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

22 years agoadded member datetime_format to CultureInfo.cs
Martin Weindel [Sun, 4 Nov 2001 13:27:03 +0000 (13:27 -0000)]
added member datetime_format to CultureInfo.cs

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

22 years agoremoved as already defined in DateTime.cs
Martin Weindel [Sun, 4 Nov 2001 13:25:13 +0000 (13:25 -0000)]
removed as already defined in DateTime.cs

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

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