Miguel de Icaza [Mon, 24 Dec 2001 00:59:36 +0000 (00:59 -0000)]
Update tests
svn path=/trunk/mcs/; revision=1702
Miguel de Icaza [Mon, 24 Dec 2001 00:57:29 +0000 (00:57 -0000)]
2001-12-23 Miguel de Icaza <miguel@ximian.com>
* expression.cs (IsParamsMethodApplicable): if there are not
parameters, return immediately.
* ecore.cs: The 0 literal can be implicity converted to an enum
type.
(SimpleName.DoResolve): First lookup the type, then lookup the
members.
(FieldExpr.Emit): If the InstanceExpression is a ValueType, we
want to get its address. If the InstanceExpression is not
addressable, store the result in a temporary variable, then get
the address of it.
* codegen.cs: Only display 219 errors on warning level or above.
* expression.cs (ArrayAccess): Make it implement the
IMemoryLocation interface.
(Binary.DoResolve): handle the operator == (object a, object b)
and operator != (object a, object b) without incurring into a
BoxedCast (because 5 != o should never be performed).
Handle binary enumerator operators.
(EmitLoadOpcode): Use Ldelema if the object we are loading is a
value type, otherwise use Ldelem_ref.
Use precomputed names;
(AddressOf): Implement address of
* cs-parser.jay (labeled_statement): Fix recursive block
addition by reworking the production.
* expression.cs (New.DoEmit): New has a special case:
If we are dealing with a ValueType, we have a few
situations to deal with:
* The target of New is a ValueType variable, that is
easy, we just pass this as the variable reference
* The target of New is being passed as an argument,
to a boxing operation or a function that takes a
ValueType.
In this case, we need to create a temporary variable
that is the argument of New.
svn path=/trunk/mcs/; revision=1701
Miguel de Icaza [Mon, 24 Dec 2001 00:22:45 +0000 (00:22 -0000)]
Add another bug
svn path=/trunk/mcs/; revision=1700
Nick Drochak [Sun, 23 Dec 2001 20:22:31 +0000 (20:22 -0000)]
2001-12-23 Nick Drochak <ndrochak@gol.com>
* ChangeLog: Flush old edit to this file.
svn path=/trunk/mcs/; revision=1699
Miguel de Icaza [Sun, 23 Dec 2001 15:29:57 +0000 (15:29 -0000)]
Test 62
svn path=/trunk/mcs/; revision=1698
Miguel de Icaza [Sun, 23 Dec 2001 15:29:15 +0000 (15:29 -0000)]
Add test-65, and include 63 and 64 on the build
svn path=/trunk/mcs/; revision=1697
Ravi Pratap M [Sun, 23 Dec 2001 14:53:22 +0000 (14:53 -0000)]
Committing again just to be sure ;-)
svn path=/trunk/mcs/; revision=1696
Ravi Pratap M [Sun, 23 Dec 2001 14:44:12 +0000 (14:44 -0000)]
2001-12-23 Ravi Pratap <ravi@ximian.com>
* typemanager.cs : Use PtrHashtable for Delegate data hashtable etc.
* assign.cs : Get rid of EventIsLocal everywhere.
svn path=/trunk/mcs/; revision=1695
Ravi Pratap M [Sun, 23 Dec 2001 14:08:58 +0000 (14:08 -0000)]
2001-12-23 Ravi Pratap <ravi@ximian.com>
* rootcontext.cs (LookupType): Check that current_type is not null before
going about looking at nested types.
* ecore.cs (EventExpr.EmitAddOrRemove): Rename from EmitAssign as we do
not implement the IAssignMethod interface any more.
* expression.cs (MemberAccess.ResolveMemberAccess): Handle EventExprs specially
where we tranform them into FieldExprs if they are being resolved from within
the declaring type.
* ecore.cs (SimpleName.DoResolve): Do the same here.
* assign.cs (DoResolve, Emit): Clean up code considerably.
* ../errors/bug10.cs : Add.
* ../errors/cs0070.cs : Add.
svn path=/trunk/mcs/; revision=1694
Ravi Pratap M [Sun, 23 Dec 2001 14:04:11 +0000 (14:04 -0000)]
2001-12-23 Ravi Pratap <ravi@ximian.com>
* test-57.cs : Update.
* makefile : Update to include the above as it passes nicely.
svn path=/trunk/mcs/; revision=1693
Ravi Pratap M [Sun, 23 Dec 2001 14:01:44 +0000 (14:01 -0000)]
Add
svn path=/trunk/mcs/; revision=1692
Miguel de Icaza [Sun, 23 Dec 2001 04:48:10 +0000 (04:48 -0000)]
2001-12-23 Miguel de Icaza <miguel@ximian.com>
* typemanager.cs (GetAccessors): Make the return value consistent
(ie, 0 is always get, 1 is always set)
* ecore.cs (ConvertIntLiteral): finished the implementation.
* statement.cs (SwitchLabel): Convert the value we are using as a
key before looking up the table.
svn path=/trunk/mcs/; revision=1691
Miguel de Icaza [Sat, 22 Dec 2001 23:42:12 +0000 (23:42 -0000)]
2001-12-22 Miguel de Icaza <miguel@ximian.com>
* codegen.cs (EmitTopBlock): Require a Location argument now.
* cs-parser.jay (constructor_declarator): We need to setup
current_local_parameters before we parse the
opt_constructor_initializer, to allow the variables to be bound
to the constructor arguments.
* rootcontext.cs (LookupType): First lookup nested classes in our
class and our parents before we go looking outside our class.
* expression.cs (ConstantFold): Extract/debox the values at the
beginnning.
* rootcontext.cs (EmitCode): Resolve the constants first before we
resolve the types. This is not really needed, but it helps debugging.
svn path=/trunk/mcs/; revision=1690
Miguel de Icaza [Sat, 22 Dec 2001 22:45:37 +0000 (22:45 -0000)]
Added new test
svn path=/trunk/mcs/; revision=1689
Miguel de Icaza [Sat, 22 Dec 2001 15:45:43 +0000 (15:45 -0000)]
Update
svn path=/trunk/mono/; revision=1688
Miguel de Icaza [Sat, 22 Dec 2001 15:29:09 +0000 (15:29 -0000)]
2001-12-22 Miguel de Icaza <miguel@ximian.com>
* statement.cs: report location.
* cs-parser.jay: pass location to throw statement.
* driver.cs: Small bug fix.
* report.cs: Updated format to be 4-zero filled digits.
svn path=/trunk/mcs/; revision=1687
Ravi Pratap M [Sat, 22 Dec 2001 14:04:13 +0000 (14:04 -0000)]
2001-12-22 Ravi Pratap <ravi@ximian.com>
* expression.cs (CheckIndices): Fix minor bug where the wrong
variable was being referred to ;-)
(DoEmit): Do not call EmitStaticInitializers when the
underlying type is System.Object.
svn path=/trunk/mcs/; revision=1686
Ravi Pratap M [Sat, 22 Dec 2001 10:50:10 +0000 (10:50 -0000)]
2001-12-21 Ravi Pratap <ravi@ximian.com>
* test-19.cs : Augment to exercise code which fixed the bug
where we were not generating a This for the delegate's
instance expression - for the non-static methods ie.
svn path=/trunk/mcs/; revision=1685
Ravi Pratap M [Sat, 22 Dec 2001 10:47:10 +0000 (10:47 -0000)]
2001-12-21 Ravi Pratap <ravi@ximian.com>
* ecore.cs (EventExpr.Resolve): Implement to correctly set the type
and do the usual workaround for SRE.
* class.cs (MyEventBuilder.EventType): New member to get at the type
of the event, quickly.
* expression.cs (Binary.ResolveOperator): Handle delegate addition.
* assign.cs (Assign.DoResolve): Handle the case when the target
is an EventExpr and perform the necessary checks.
* ecore.cs (EventExpr.EmitAssign): Implement the IAssignMethod
interface.
(SimpleName.MemberStaticCheck): Include check for EventExpr.
(EventExpr): Set the type in the constructor itself since we
are meant to be born fully resolved.
(EventExpr.Define): Revert code I wrote earlier.
* delegate.cs (NewDelegate.Resolve): Handle the case when the MethodGroup's
instance expression is null. The instance expression is a This in that case
or a null, depending on whether it is a static method or not.
Also flag an error if the reference to a method is ambiguous i.e the MethodGroupExpr
refers to more than one method.
* assign.cs (DoResolve): Check whether the event belongs to the same Type container
and accordingly flag errors.
svn path=/trunk/mcs/; revision=1684
Miguel de Icaza [Sat, 22 Dec 2001 04:28:21 +0000 (04:28 -0000)]
New build file
svn path=/trunk/mcs/; revision=1683
Miguel de Icaza [Sat, 22 Dec 2001 04:28:02 +0000 (04:28 -0000)]
2001-12-21 Miguel de Icaza <miguel@ximian.com>
* SecurityElement.cs, CodeAccessPermission.cs IPermission.cs
IStackWalk.cs SecurityElement.cs ISecurityEncodable.cs: New files.
svn path=/trunk/mcs/; revision=1682
Miguel de Icaza [Sat, 22 Dec 2001 03:46:42 +0000 (03:46 -0000)]
2001-12-21 Miguel de Icaza <miguel@ximian.com>
* Char.cs (Parse): Implement.
* Byte.cs (Parse): Implement a fast parser.
* SByte.cs (Parse): Implement a fast parser.
* UInt16.cs (Parse): Implement a fast parser.
* Int16.cs (Parse): Implement a fast parser.
* UInt32.cs (Parse): Implement a fast parser.
* Int32.cs (Parse): Implement a fast parser.
svn path=/trunk/mcs/; revision=1681
Miguel de Icaza [Sat, 22 Dec 2001 02:39:31 +0000 (02:39 -0000)]
2001-12-21 Miguel de Icaza <miguel@ximian.com>
* statement.cs (Throw.Emit): Add support for re-throwing exceptions.
svn path=/trunk/mcs/; revision=1680
Miguel de Icaza [Sat, 22 Dec 2001 01:14:10 +0000 (01:14 -0000)]
Add new error
svn path=/trunk/mcs/; revision=1679
Miguel de Icaza [Sat, 22 Dec 2001 01:12:03 +0000 (01:12 -0000)]
2001-12-22 Miguel de Icaza <miguel@ximian.com>
* location.cs (ToString): Provide useful rutine.
2001-12-21 Miguel de Icaza <miguel@ximian.com>
* ecore.cs (Expression.ConvertIntLiteral): Do not return Constant
objects, return the actual integral boxed.
* statement.cs (SwitchLabel): define an ILLabel for each
SwitchLabel.
(Switch.CheckSwitch): If the value is a Literal, extract
the underlying literal.
Also in the unused hashtable we had, add the SwitchLabel so we can
quickly look this value up.
* constant.cs: Implement a bunch of new constants. Rewrite
Literal based on this. Made changes everywhere to adapt to this.
* expression.cs (Expression.MakeByteBlob): Optimize routine by
dereferencing array only once, and also copes with enumrations.
bytes are two bytes wide, not one.
(Cast): Perform constant conversions.
* ecore.cs (TryImplicitIntConversion): Return literals instead of
wrappers to the literals here.
* expression.cs (DoNumericPromotions): long literals can converted
to ulong implicity (this is taken care of elsewhere, but I was
missing this spot).
* ecore.cs (Expression.Literalize): Make the return type Literal,
to improve type checking.
* rootcontext.cs: Lookup for nested classes in our class hierarchy.
svn path=/trunk/mcs/; revision=1678
Miguel de Icaza [Sat, 22 Dec 2001 00:35:28 +0000 (00:35 -0000)]
Update
svn path=/trunk/mcs/; revision=1677
Miguel de Icaza [Sat, 22 Dec 2001 00:30:57 +0000 (00:30 -0000)]
Update
svn path=/trunk/mcs/; revision=1676
Miguel de Icaza [Sat, 22 Dec 2001 00:28:37 +0000 (00:28 -0000)]
Flush
svn path=/trunk/mcs/; revision=1675
Miguel de Icaza [Fri, 21 Dec 2001 21:03:29 +0000 (21:03 -0000)]
2001-12-21 Miguel de Icaza <miguel@ximian.com>
* rawbuffer.cs: Added native Win32 implementation, avoids using
mmap on Cygwin. This patch is from Dan Lewis (dihlewis@yahoo.co.uk)
svn path=/trunk/mono/; revision=1674
Gaurav Vaish [Fri, 21 Dec 2001 19:51:42 +0000 (19:51 -0000)]
2001-12-22 Gaurav Vaish <gvaish@iitk.ac.in>
* HttpRuntime -- updated comments
* FileChangesMonitor.cs, IISVersionInfo.cs -- updated comments
* UrlUtils.cs -- Added IsRooted function
* FilePathParser -- Another intensive class needed
* WebEqualComparer.cs, WebHashCodeProvider.cs -- IComparer, IHashCodeProvider
svn path=/trunk/mcs/; revision=1673
Aaron Weber [Fri, 21 Dec 2001 17:43:31 +0000 (17:43 -0000)]
2001-12-21 Aaron Weber <aaron@ximian.com>
* doc/faq (A): added a linebreak that was missing and was causing
a heading to appear badly.
svn path=/trunk/mono/; revision=1672
Aaron Weber [Fri, 21 Dec 2001 17:18:49 +0000 (17:18 -0000)]
2001-12-20 Aaron Weber <aaron@ximian.com>
* doc/faq: added <a name=""> nav links, and moved all MSFT-related
questions into a single section.
svn path=/trunk/mono/; revision=1671
Miguel de Icaza [Fri, 21 Dec 2001 16:00:10 +0000 (16:00 -0000)]
Small beautification patch
svn path=/trunk/mono/; revision=1670
Paolo Molaro [Fri, 21 Dec 2001 10:21:37 +0000 (10:21 -0000)]
Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
* Array.cs: fix null ref in sort code.
* UInt64.cs: add bare-bones parse.
svn path=/trunk/mcs/; revision=1669
Paolo Molaro [Fri, 21 Dec 2001 10:17:00 +0000 (10:17 -0000)]
More tests.
svn path=/trunk/mono/; revision=1668
Gaurav Vaish [Fri, 21 Dec 2001 09:18:56 +0000 (09:18 -0000)]
2001-12-21 Gaurav Vaish <gvaish@iitk.ac.in>
* ChangeLog -- Updated.
svn path=/trunk/mcs/; revision=1667
Gaurav Vaish [Fri, 21 Dec 2001 08:42:28 +0000 (08:42 -0000)]
2001-12-21 Gaurav Vaish <gvaish@iitk.ac.in>
* System.Web/*.cs
* System.Web.Caching/*.cs
* System.Web.UI/*.cs
* System.Web.Utils/*.cs
* System.Web.UI.WebControls/*.cs
-- The ISP was down yesterday and today morning. So many files. See changelog for more details.
svn path=/trunk/mcs/; revision=1666
Gaurav Vaish [Fri, 21 Dec 2001 08:26:46 +0000 (08:26 -0000)]
2001-12-21 Gaurav Vaish <gvaish@iitk.ac.in>
* .cvsignore -- ??
svn path=/trunk/mcs/; revision=1665
Miguel de Icaza [Fri, 21 Dec 2001 01:27:30 +0000 (01:27 -0000)]
rethrow test
svn path=/trunk/mcs/; revision=1664
Miguel de Icaza [Fri, 21 Dec 2001 00:51:53 +0000 (00:51 -0000)]
Add bug9
svn path=/trunk/mcs/; revision=1663
Miguel de Icaza [Fri, 21 Dec 2001 00:51:29 +0000 (00:51 -0000)]
2001-12-20 Miguel de Icaza <miguel@ximian.com>
* literal.cs: Revert code from ravi that checked the bounds. The
bounds are sane by the definition of the type itself.
* typemanager.cs: Fix implementation of ImplementsInterface. We
need to actually look up in our parent hierarchy for interfaces
implemented.
svn path=/trunk/mcs/; revision=1662
Miguel de Icaza [Thu, 20 Dec 2001 21:29:11 +0000 (21:29 -0000)]
Flush
svn path=/trunk/mcs/; revision=1661
Miguel de Icaza [Thu, 20 Dec 2001 16:15:37 +0000 (16:15 -0000)]
Flush
svn path=/trunk/mcs/; revision=1660
Paolo Molaro [Thu, 20 Dec 2001 15:22:08 +0000 (15:22 -0000)]
Update to demonstrate problem with static/instance methods.
svn path=/trunk/mono/; revision=1659
Paolo Molaro [Thu, 20 Dec 2001 15:21:23 +0000 (15:21 -0000)]
Thu Dec 20 20:11:26 CET 2001 Paolo Molaro <lupus@ximian.com>
* class.c: make the low-level routines handle the cache.
svn path=/trunk/mono/; revision=1658
Paolo Molaro [Thu, 20 Dec 2001 15:21:02 +0000 (15:21 -0000)]
Thu Dec 20 20:09:48 CET 2001 Paolo Molaro <lupus@ximian.com>
* interp.c: fix delegate method invocation to handle both
static and instance methods.
svn path=/trunk/mono/; revision=1657
Paolo Molaro [Thu, 20 Dec 2001 15:20:42 +0000 (15:20 -0000)]
Thu Dec 20 20:13:07 CET 2001 Paolo Molaro <lupus@ximian.com>
* x86/tramp.c: fix create_method_pointer() to pass the arguments
correctly and add check for overflow.
svn path=/trunk/mono/; revision=1656
Miguel de Icaza [Thu, 20 Dec 2001 14:07:30 +0000 (14:07 -0000)]
2001-12-20 Miguel de Icaza <miguel@ximian.com>
* delegate.cs: Compute the basename for the delegate creation,
that should fix the delegate test case, and restore the correct
Type Lookup semantics in rootcontext
* rootcontext.cs: Revert Ravi's last patch. The correct way of
referencing a nested type with the Reflection API is using the "+"
sign.
svn path=/trunk/mcs/; revision=1655
Ravi Pratap M [Thu, 20 Dec 2001 13:52:12 +0000 (13:52 -0000)]
2001-12-20 Ravi Pratap <ravi@ximian.com>
* expression.cs (MemberAccess.ResolveMemberAccess): Add support for
the case when the member is an EventExpr.
* ecore.cs (EventExpr.InstanceExpression): Every event which is not
static has an associated instance expression.
* typemanager.cs (RegisterEvent): The usual workaround, now for events.
(GetAddMethod, GetRemoveMethod): Workarounds, as usual.
* class.cs (Event.Define): Register event and perform appropriate checks
for error #111.
We define the Add and Remove methods even if the use provides none because
in that case, we provide default implementations ourselves.
Define a private field of the type of the event. This is done by the CSC compiler
and we should be doing it too ;-)
* typemanager.cs (delegate_combine_delegate_delegate, delegate_remove_delegate_delegate):
More methods we use in code we generate.
(multicast_delegate_type, delegate_type): Two separate types since the distinction
is important.
(InitCoreTypes): Update accordingly for the above.
* class.cs (Event.Emit): Generate code for default accessors that we provide
(EmitDefaultMethod): Do the job in the above.
* delegate.cs (DefineDelegate): Use TypeManager.multicast_delegate_type in the
appropriate place.
svn path=/trunk/mcs/; revision=1654
Miguel de Icaza [Thu, 20 Dec 2001 11:55:30 +0000 (11:55 -0000)]
2001-12-20 Miguel de Icaza <miguel@ximian.com>
* cs-parser.jay: Do not require EOF token at the end.
svn path=/trunk/mcs/; revision=1653
Paolo Molaro [Thu, 20 Dec 2001 10:53:07 +0000 (10:53 -0000)]
Thu Dec 20 15:46:31 CET 2001 Paolo Molaro <lupus@ximian.com>
* FieldOffsetAttribute.cs, InAttribute.cs, MarshalAsAttribute.cs,
OptionalAttribute.cs, StructLayoutAttribute.cs, VarEnum.cs:
more stuff needed by the compiler.
svn path=/trunk/mcs/; revision=1652
Paolo Molaro [Thu, 20 Dec 2001 10:36:18 +0000 (10:36 -0000)]
Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
* Byte.cs: removed use of Regexes.
svn path=/trunk/mcs/; revision=1651
Paolo Molaro [Thu, 20 Dec 2001 10:27:40 +0000 (10:27 -0000)]
Thu Dec 20 15:20:35 CET 2001 Paolo Molaro <lupus@ximian.com>
* image.c: fopen (file, "rb") ("David Dawkins" <david@dawkins.st>).
svn path=/trunk/mono/; revision=1650
Ravi Pratap M [Thu, 20 Dec 2001 07:08:56 +0000 (07:08 -0000)]
2001-12-20 Ravi Pratap <ravi@ximian.com>
* rootcontext.cs (LookupType): Concatenate type names with
a '.' instead of a '+' The test suite passes again.
* enum.cs (Enum.DefineEnum): Set RTSpecialName on the 'value__'
field of the enumeration.
svn path=/trunk/mcs/; revision=1649
Miguel de Icaza [Thu, 20 Dec 2001 02:09:30 +0000 (02:09 -0000)]
2001-12-20 Miguel de Icaza <miguel@ximian.com>
* class.cs (Indexer.Define): Fix bug, we were setting both Get/Set
builders even if we were missing one.
* interface.cs, class.cs, enum.cs: When calling DefineNestedType
pass the Basename as our class name instead of the Name. The
basename will be correctly composed for us.
* parameter.cs (Paramters): Now takes a Location argument.
* decl.cs (DeclSpace.LookupType): Removed convenience function and
make all the code call directly LookupType in RootContext and take
this chance to pass the Location information everywhere.
* Everywhere: pass Location information.
2001-12-19 Miguel de Icaza <miguel@ximian.com>
* class.cs (Constructor.Define): Updated way of detecting the
length of the parameters.
(TypeContainer.DefineType): Use basename as the type name for
nested types.
(TypeContainer.Define): Do not recursively define types here, as
definition is taken care in order by the RootContext.
svn path=/trunk/mcs/; revision=1648
Miguel de Icaza [Thu, 20 Dec 2001 01:45:27 +0000 (01:45 -0000)]
Flush
svn path=/trunk/mcs/; revision=1647
Miguel de Icaza [Thu, 20 Dec 2001 01:28:06 +0000 (01:28 -0000)]
Add new bug and new error
svn path=/trunk/mcs/; revision=1646
Miguel de Icaza [Wed, 19 Dec 2001 20:09:13 +0000 (20:09 -0000)]
2001-12-19 Miguel de Icaza <miguel@ximian.com>
* tree.cs: Keep track of namespaces in a per-file basis.
* parameter.cs (Parameter.ComputeSignature): Update to use
DeclSpace.
(Parameters.GetSignature): ditto.
* interface.cs (InterfaceMethod.GetSignature): Take a DeclSpace
instead of a TypeContainer.
(Interface.SemanticAnalysis): Use `this' instead of our parent to
resolve names. Because we need to be resolve in our context, not
our parents.
* driver.cs: Implement response files.
* class.cs (TypeContainer.DefineType): If we are defined, do not
redefine ourselves.
(Event.Emit): Emit the code for add/remove handlers.
(Event.Define): Save the MethodBuilders for add/remove.
* typemanager.cs: Use pair here too.
* cs-parser.jay: Replaced use of DictionaryEntry for Pair because
DictionaryEntry requires the first argument to be non-null.
(enum_declaration): Compute full name for registering the
enumeration.
(delegate_declaration): Instead of using
formal_parameter_list, use opt_formal_parameter_list as the list
can be empty.
* cs-tokenizer.cs (PropertyParsing): renamed from `properties'
(EventParsing): New property that controls whether `add' and
`remove' are returned as tokens or identifiers (for events);
svn path=/trunk/mcs/; revision=1645
Miguel de Icaza [Wed, 19 Dec 2001 17:51:33 +0000 (17:51 -0000)]
Add parsing test
svn path=/trunk/mcs/; revision=1644
Gaurav Vaish [Wed, 19 Dec 2001 17:34:12 +0000 (17:34 -0000)]
2001-12-20 Gaurav Vaish <gvaish@iitk.ac.in>
* UI.WebControls/*.cs
-- on the way. FontInfo completed
svn path=/trunk/mcs/; revision=1643
Ravi Pratap M [Wed, 19 Dec 2001 13:17:20 +0000 (13:17 -0000)]
2001-12-19 Ravi Pratap <ravi@ximian.com>
* class.cs (Event.Define): Revamp use of EventBuilder completely. We now
use MyEventBuilder only and let it wrap the real builder for us.
(MyEventBuilder): Revamp constructor etc.
Implement all operations that we perform on EventBuilder in precisely the same
way here too.
(FindMembers): Update to use the EventBuilder member.
(Event.Emit): Update accordingly.
2001-12-18 Ravi Pratap <ravi@ximian.com>
* class.cs (MyEventBuilder.Set*): Chain to the underlying builder
by calling the appropriate methods.
(GetCustomAttributes): Make stubs as they cannot possibly do anything
useful.
(Event.Emit): Use MyEventBuilder everywhere - even to set attributes.
2001-12-17 Ravi Pratap <ravi@ximian.com>
* delegate.cs (Delegate.Populate): Check that the return type
and various parameters types are indeed accessible.
* class.cs (Constructor.Define): Same here.
(Field.Define): Ditto.
(Event.Define): Ditto.
(Operator.Define): Check that the underlying Method defined itself
correctly - so it's MethodBuilder should not be null.
* delegate.cs (DelegateInvocation.DoResolve): Bale out if the type of the Instance
expression happens to be null.
* class.cs (MyEventBuilder): Workaround for SRE lameness. Implement various abstract
members but as of now we don't seem to be able to do anything really useful with it.
(FindMembers): Handle events separately by returning the MyEventBuilder of the event,
not the EventBuilder.
svn path=/trunk/mcs/; revision=1642
Gaurav Vaish [Wed, 19 Dec 2001 12:04:23 +0000 (12:04 -0000)]
2001-12-19 Gaurav Vaish <gvaish@iitk.ac.in>
* AUTHORS: Ha ha, having fun time.
* ListItem.cs -- needed because of visibility issues(?)
svn path=/trunk/mcs/; revision=1641
Gaurav Vaish [Wed, 19 Dec 2001 10:35:06 +0000 (10:35 -0000)]
2001-12-19 Gaurav Vaish <gvaish@iitk.ac.in>
* UI.WebControls/*.cs
--> Got over 100 erros, 50+ warning (with /nowarn:1595). Trying to remove them for first build. Completing uncompleted. Creating new ones.
svn path=/trunk/mcs/; revision=1640
Miguel de Icaza [Wed, 19 Dec 2001 00:30:31 +0000 (00:30 -0000)]
remove debugging messages, fix buglette
svn path=/trunk/mcs/; revision=1639
Miguel de Icaza [Wed, 19 Dec 2001 00:23:39 +0000 (00:23 -0000)]
2001-12-18 Miguel de Icaza <miguel@ximian.com>
* cs-tokenizer.cs: Add support for defines.
Add support for #if, #elif, #else, #endif
(eval_var): evaluates a variable.
(eval): stubbed for evaluating functions.
* cs-parser.jay: Pass the defines information
* driver.cs: Add --define command line option.
svn path=/trunk/mcs/; revision=1638
Miguel de Icaza [Wed, 19 Dec 2001 00:23:19 +0000 (00:23 -0000)]
Add test 60
svn path=/trunk/mcs/; revision=1637
Miguel de Icaza [Tue, 18 Dec 2001 21:32:56 +0000 (21:32 -0000)]
2001-12-18 Miguel de Icaza <miguel@ximian.com>
* decl.cs: Move MemberCore here.
Make it the base class for DeclSpace. This allows us to catch and
report 108 and 109 for everything now.
* class.cs (TypeContainer.Define): Extract all the members
before populating and emit the warning 108 (new keyword required
to override) instead of having each member implement this.
(MemberCore.Define): New abstract method, we will be using this in
the warning reporting engine in Populate.
svn path=/trunk/mcs/; revision=1636
Gaurav Vaish [Tue, 18 Dec 2001 20:33:29 +0000 (20:33 -0000)]
2001-12-19 Gaurav Vaish <Gvaish@iitk.ac.in>
* UI/*.cs
* WebControls/*.cs
-- Oops forgot to add these files in previous commit
svn path=/trunk/mcs/; revision=1635
Gaurav Vaish [Tue, 18 Dec 2001 20:29:05 +0000 (20:29 -0000)]
2001-12-19 Gaurav Vaish <gvaish@iitk.ac.in>
* System.Web.UI/*.cs
* System.Web.UI.WebControls/*.cs
--- Still working hard to make build succesfull. Lots of errors. Really, lots and lots. Not it's 6:00AM and I need to sleep :))
svn path=/trunk/mcs/; revision=1634
Miguel de Icaza [Tue, 18 Dec 2001 18:54:17 +0000 (18:54 -0000)]
Flush
svn path=/trunk/mono/; revision=1633
Miguel de Icaza [Tue, 18 Dec 2001 18:42:30 +0000 (18:42 -0000)]
flush
svn path=/trunk/mono/; revision=1632
Miguel de Icaza [Tue, 18 Dec 2001 18:23:14 +0000 (18:23 -0000)]
2001-12-18 Miguel de Icaza <miguel@ximian.com>
* class.cs (Method.Define): Allow the entry point to be in a
specific class.
* driver.cs: Rewrite the argument handler to clean it up a bit.
* rootcontext.cs: Made it just an auxiliary namespace feature by
making everything static.
* driver.cs: Adapt code to use RootContext type name instead of
instance variable.
* delegate.cs: Remove RootContext argument.
* class.cs: (Struct, TypeContainer, Class): Remove RootContext
argument.
* class.cs (Event.Define): The lookup can fail.
* cs-tokenizer.cs: Begin implementation of pre-procesor.
* expression.cs: Resolve the this instance before invoking the code.
svn path=/trunk/mcs/; revision=1631
Gaurav Vaish [Tue, 18 Dec 2001 16:15:40 +0000 (16:15 -0000)]
2001-12-19 Gaurav Vaish <gvaish@iitk.ac.in>
* ChangeLog --- changes for 2001-12-18
svn path=/trunk/mcs/; revision=1630
Gaurav Vaish [Tue, 18 Dec 2001 15:34:40 +0000 (15:34 -0000)]
2001-12-18 Gaurav Vaish <gvaish@iitk.ac.in>
* System.Web.UI/*.cs
* System.Web.UI.WebControls.cs -- trying to make build. A nightmare!!
svn path=/trunk/mcs/; revision=1629
Paolo Molaro [Tue, 18 Dec 2001 14:26:49 +0000 (14:26 -0000)]
Interface needed by the compiler.
svn path=/trunk/mcs/; revision=1628
Gaurav Vaish [Tue, 18 Dec 2001 14:11:11 +0000 (14:11 -0000)]
2001-12-18 Gaurav Vaish <gvaish@iitk.ac.in>
* System.Web.UI/*.cs
* System.Web/*.cs -- Looks like I need to take control of this now. Build is otherwise failing
svn path=/trunk/mcs/; revision=1627
Paolo Molaro [Tue, 18 Dec 2001 14:06:49 +0000 (14:06 -0000)]
Tue Dec 18 18:50:00 CET 2001 Paolo Molaro <lupus@ximian.com>
* class.c: fix mono_array_element_size() for objects.
* class.h, class.c: add properties to MonoClass and load them
at init time.
* icall.c: check with isinst() when assigning a value to an array
instead of requiring the classes to match exactly.
Implemented icall for System.Type::GetType().
Implemented icalls to get ParameterInfo, ProprtyInfo and info about
enums. Handle bindingflags when looking for methods and fields.
* metadata.h, metadata.c: implemented mono_metadata_properties_from_typedef()
and mono_metadata_methods_from_property().
* reflection.h, reflection.c: added structures for propreties,
parameters and enums. Implemented mono_property_get_object() and
mono_param_get_objects().
Tue Dec 18 18:48:00 CET 2001 Paolo Molaro <lupus@ximian.com>
* main.c: use mono_metadata_methods_from_property() and
mono_metadata_properties_from_typedef() from metadata instead of
custom code.
Tue Dec 18 18:48:50 CET 2001 Paolo Molaro <lupus@ximian.com>
* interp.c: make segv_handler static, handle runtime methods in stack
trace.
svn path=/trunk/mono/; revision=1626
Paolo Molaro [Tue, 18 Dec 2001 14:05:35 +0000 (14:05 -0000)]
Tue Dec 18 18:46:22 CET 2001 Paolo Molaro <lupus@ximian.com>
* MonoMethod.cs: implemented GetParameters().
* MonoProperty.cs: PropertyInfo implementation.
* ParameterInfo.cs: implemented.
* PropertyInfo.cs: fixes.
Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
* Enum.cs: implemented GetValues(), GetNames(), GetName(),
IsDefined(), GetUnderlyingType().
* String.cs: fix one instance of Compare().
* Type.cs: implemented GetProperties(), GetProperty().
svn path=/trunk/mcs/; revision=1625
Gaurav Vaish [Tue, 18 Dec 2001 13:05:43 +0000 (13:05 -0000)]
2001-12-18 Gaurav Vaish <GVaish@iitk.ac.in>
* HttpRuntime.cs, DesignTimeParseData.cs -- Initial implementation. Can now build without any problem
svn path=/trunk/mcs/; revision=1624
Gaurav Vaish [Tue, 18 Dec 2001 12:55:30 +0000 (12:55 -0000)]
2001-12-18 Gaurav Vaish <Gvaish@iitk.ac.in>
:: Looks like I can build now... Yes!
svn path=/trunk/mcs/; revision=1623
Dick Porter [Tue, 18 Dec 2001 11:25:56 +0000 (11:25 -0000)]
2001-12-18 Dick Porter <dick@ximian.com>
* file-io.c: Use mono_string_to_utf16() instead of
mono_string_chars()
* object.c: Added mono_string_to_utf16(), which copies the non
NULL-terminated MonoString into a new double-null-terminated
buffer.
svn path=/trunk/mono/; revision=1622
Gaurav Vaish [Tue, 18 Dec 2001 11:08:22 +0000 (11:08 -0000)]
2001-12-18 Gaurav Vaish <Gvaish@iitk.ac.in>
* HttpRuntime.cs --- Initial Implementation. Only those that caused build failing for System.Web.UI.WebControls
svn path=/trunk/mcs/; revision=1621
Gaurav Vaish [Tue, 18 Dec 2001 09:30:40 +0000 (09:30 -0000)]
2001-12-18 Gaurav Vaish <Gvaish@iitk.ac.in>
* DayRenderEventArgs.cs --- Done for DayRenderEventHandler in Calendar.cs
svn path=/trunk/mcs/; revision=1620
Dietmar Maurer [Tue, 18 Dec 2001 09:15:00 +0000 (09:15 -0000)]
new abstract classes
svn path=/trunk/mcs/; revision=1619
Paolo Molaro [Tue, 18 Dec 2001 08:25:22 +0000 (08:25 -0000)]
Tue Dec 18 13:18:32 CET 2001 Paolo Molaro <lupus@ximian.com>
* *.cs: fixed some of the compilation issues: missing
using directives, typos.
svn path=/trunk/mcs/; revision=1618
Miguel de Icaza [Tue, 18 Dec 2001 04:04:55 +0000 (04:04 -0000)]
2001-12-18 Miguel de Icaza <miguel@ximian.com>
* cs-tokenizer.cs: Begin implementation of pre-procesor.
* expression.cs: Resolve the this instance before invoking the code.
svn path=/trunk/mcs/; revision=1617
Miguel de Icaza [Tue, 18 Dec 2001 02:27:47 +0000 (02:27 -0000)]
Make test-51 part of the default tests
svn path=/trunk/mcs/; revision=1616
Miguel de Icaza [Tue, 18 Dec 2001 00:22:00 +0000 (00:22 -0000)]
Add test-56 and improve description of test
svn path=/trunk/mcs/; revision=1615
Miguel de Icaza [Tue, 18 Dec 2001 00:19:48 +0000 (00:19 -0000)]
Small fix
svn path=/trunk/mcs/; revision=1614
Miguel de Icaza [Mon, 17 Dec 2001 20:21:10 +0000 (20:21 -0000)]
2001-12-17 Miguel de Icaza <miguel@ximian.com>
* cs-parser.jay: Add a production in element_access that allows
the thing to become a "type" reference. This way we can parse
things like "(string [])" as a type.
Note that this still does not handle the more complex rules of
casts.
svn path=/trunk/mcs/; revision=1613
Gaurav Vaish [Mon, 17 Dec 2001 18:34:15 +0000 (18:34 -0000)]
200-112-18 Gaurav Vaish <Gvaish@iitk.ac.in>
* BaseDataList --- Another class completed
svn path=/trunk/mcs/; revision=1612
Aaron Weber [Mon, 17 Dec 2001 18:12:43 +0000 (18:12 -0000)]
001-12-17 Aaron Weber <aaron@ximian.com>
* doc/faq (Q): Question-by-question, line-by-line revision.
svn path=/trunk/mono/; revision=1611
Gaurav Vaish [Mon, 17 Dec 2001 15:03:05 +0000 (15:03 -0000)]
2001-12-17 Gaurav Vaish <Gvaish@iitk.ac.in>
* TODO: Properly made and added
svn path=/trunk/mcs/; revision=1610
Gaurav Vaish [Mon, 17 Dec 2001 15:02:06 +0000 (15:02 -0000)]
2001-12-17 Gaurav Vaish <Gvaish@iitk.ac.in>
* UrlUtils.cs -- Added IsRelativeUrl(...)
* AdRotator.cs -- Completed
svn path=/trunk/mcs/; revision=1609
Miguel de Icaza [Mon, 17 Dec 2001 14:52:20 +0000 (14:52 -0000)]
2001-12-16 Miguel de Icaza <miguel@ximian.com>
* x86.brg, jit.c: Split up the nodes that we used to share on
CONV_OVF. They were sharing the nodes because they are the same
on 32-bit machines, but on 64-bit machines you need different
code for them.
svn path=/trunk/mono/; revision=1608
Dietmar Maurer [Mon, 17 Dec 2001 13:02:43 +0000 (13:02 -0000)]
2001-12-17 Dietmar Maurer <dietmar@ximian.com>
* x86.brg: removed prerequisite that (tree->left->reg1 <
tree->right->reg1) to make register allocation easier.
svn path=/trunk/mono/; revision=1607
Dietmar Maurer [Mon, 17 Dec 2001 12:50:15 +0000 (12:50 -0000)]
(_wapi_unicode_to_utf8): only swap bytes on LE systems, remove bug
from previous commit.
svn path=/trunk/mono/; revision=1606
Gaurav Vaish [Mon, 17 Dec 2001 12:26:27 +0000 (12:26 -0000)]
2001-12-17 Gaurav Vaish <Gvaish@iitk.ac.in>
* UrlUtils --- Implemented functions Combine and Reduce. Huh! What a relief
* ChangeLog --- Informed others
svn path=/trunk/mcs/; revision=1605
Dietmar Maurer [Mon, 17 Dec 2001 10:43:07 +0000 (10:43 -0000)]
2001-12-17 Dietmar Maurer <dietmar@ximian.com>
* icall.c (ves_icall_System_DateTime_GetNow): added EPOCH adjustment
svn path=/trunk/mono/; revision=1604
Dietmar Maurer [Mon, 17 Dec 2001 06:50:02 +0000 (06:50 -0000)]
2001-12-16 Dietmar Maurer <dietmar@ximian.com>
* emit-x86.c (arch_handle_exception): new code to handle
exceptions inside unmanaged code.
* x86.brg: impl. SAVE_LMF, RESTORE_LMF, pass implizit valuetype
address as first argument.
* x86.brg: pass exceptions on the stack
* jit.h (ISSTRUCT): new macro to check for real value types
(return false for enum types).
* unicode.c (_wapi_unicode_to_utf8): byteswap UTF16 strings before
passing them to iconv
* file-io.c: raise exceptions if handle is invalid.
svn path=/trunk/mono/; revision=1603