Age | Commit message (Collapse) | Author |
|
* typemanager.cs (IsOverride, RegisterNonOverride): New.
* decl.cs (MemberCache.AddMethod): Register "non-override" methods
that used to trigger warning -28. Remove warning -28.
* expression.cs (Invocation.OverloadResolve): Use
TypeManager.IsOverride to distinguish override methods.
In errors:
* errors.txt (warning -28): Remove.
svn path=/trunk/mcs/; revision=43921
|
|
svn path=/trunk/mcs/; revision=43303
|
|
svn path=/trunk/mcs/; revision=43125
|
|
Fix #47991. Remove a TODO.
* statement.cs (Block.Toplevel): Make into a field.
(Block.Parameters): Move into ToplevelBlock.
(Block.known_variables): Rename from child_variable_names.
(Block.Block): Remove variants that take Parameters. Initialize
'Toplevel' with the immediately surrounding toplevel block.
(Block.AddKnownVariable): Rename from AddChildVariableName. Add a
LocalInfo parameter.
(Block.GetKnownVariableInfo): New.
(Block.IsVariableNameUsedInChildBlock): Update.
(Block.IsVariableNameUsedInBlock): New. Checks if a name is used in
the block, even though it may not be in scope.
(Block.AddVariable): Remove Parameters parameter. Use
Toplevel.Parameters instead.
(Block.AddConstant): Remove Parameters parameter.
(Block.GetParameterReference): Update to use Toplevel.Parameters.
(Block.IsParamaterReference): Likewise.
(Block.IsLocalParameter): Likewise. Simplify a lot.
(ToplevelBlock.Parameters): New. Moved from Block.
(ToplevelBlock.ToplevelBlock): Update to changes. Always
initialize Parameters to a non-null value.
* cs-parser.jay: Update to changes.
* ecore.cs (SimpleName.SimpleNameResolve): Emit cs0136 error for
simple names that mean different things in the same block. Use
Block.IsVariableNameUsedInBlock.
In errors:
* cs0136-3.cs, cs0136-4.cs: New tests from #47991.
svn path=/trunk/mcs/; revision=42330
|
|
In tools:
* Makefile (run-test-ondotnet-local, uninstall-local): New.
In tests:
* Makefile (DISTFILES): Distribute *.inc files too.
(with_mono_path): New.
(casts.cs, boot-casts.out, mcs-casts.out): Use it.
In jay:
* Makefile (uninstall-local): Remove $(prefix)/man/man1/jay.1.
In build:
* executable.make (uninstall-local): Remove .config file too.
* library.make (uninstall-local): Don't error out if GACUTIL fails.
In errors:
* Makefile (DISTFILES): Add expected error and ignored test lists.
svn path=/trunk/mcs/; revision=37308
|
|
svn path=/trunk/mcs/; revision=31874
|
|
svn path=/trunk/mcs/; revision=22631
|
|
svn path=/trunk/mcs/; revision=19381
|
|
* errors.txt: Added -219.
svn path=/trunk/mcs/; revision=18253
|
|
svn path=/trunk/mcs/; revision=18112
|
|
svn path=/trunk/mcs/; revision=17974
|
|
* errors.txt: Added -216.
svn path=/trunk/mcs/; revision=17946
|
|
svn path=/trunk/mcs/; revision=17819
|
|
svn path=/trunk/mcs/; revision=16452
|
|
svn path=/trunk/mcs/; revision=15035
|
|
svn path=/trunk/mcs/; revision=14134
|
|
svn path=/trunk/mcs/; revision=13905
|
|
svn path=/trunk/mcs/; revision=13840
|
|
svn path=/trunk/mcs/; revision=11707
|
|
svn path=/trunk/mcs/; revision=10434
|
|
* errors.txt : Update for error # -24.
svn path=/trunk/mcs/; revision=9753
|
|
svn path=/trunk/mcs/; revision=7564
|
|
svn path=/trunk/mcs/; revision=7343
|
|
svn path=/trunk/mcs/; revision=4939
|
|
svn path=/trunk/mcs/; revision=4922
|
|
* ecore.cs (ExplicitReferenceConversionExists): Made public.
(ImplicitReferenceConversionExists): Split out from
StandardConversionExists.
* expression.cs (As): We were only implementing one of the three
cases for the as operator. We now implement them all.
(Is): Implement the various other cases for Is as well.
* typemanager.cs (CACHE): New define used to control if we want or
not the FindMembers cache. Seems to have a negative impact on
performance currently
(MemberLookup): Nested types have full acess to
enclosing type members
Remove code that coped with instance/static returns for events, we
now catch this in RealFindMembers.
(RealFindMembers): only perform static lookup if the instance
lookup did not return a type or an event.
svn path=/trunk/mcs/; revision=4724
|
|
svn path=/trunk/mcs/; revision=3788
|
|
* IntPtr.cs: Temporary work-around until I fix the assembly
attributes bug.
* String.cs (System): Removed enumeration, because it is pretty
hard to support enumerations in /nostdlib mode for the core types.
2002-03-25 Miguel de Icaza <miguel@ximian.com>
* interface.cs: Implement the same search algorithm for types in
the interface code.
* delegate.cs: Do not allow multiple definition.
svn path=/trunk/mcs/; revision=3335
|
|
svn path=/trunk/mcs/; revision=3319
|
|
svn path=/trunk/mcs/; revision=3172
|
|
fixed, plus:
2002-02-26 Miguel de Icaza <miguel@ximian.com>
* ecore.cs (Expression.ConvertExplicit): Bug fix, thanks for
spotting this Paolo.
(Expression.ImplicitNumericConversion): Perform comparissions of
the type using the underlying type in the case of an enumeration
rather than using the enumeration type for the compare.
Cope with the underlying == type case, which is not possible to
catch before.
(Expression.ConvertNumericExplicit): Perform comparissions of
the type using the underlying type in the case of an enumeration
rather than using the enumeration type for the compare.
svn path=/trunk/mcs/; revision=2696
|
|
2002-02-20 Miguel de Icaza <miguel@ximian.com>
* expression.cs (Indirection): Implement EmitAssign and set the
ExprClass to Variable. This allows pointer dereferences to be
treated as variables, and to have values assigned to them.
* ecore.cs (Expression.StoreFromPtr): New utility function to
store values dereferencing.
2002-02-20 Miguel de Icaza <miguel@ximian.com>
* unsafe-1.cs: Extend test.
svn path=/trunk/mcs/; revision=2549
|
|
* expression.cs (Indirection): New helper class. Unary will
create Indirection classes to be able to implement the
IMemoryLocation interface on it.
2002-02-16 Miguel de Icaza <miguel@ximian.com>
* cs-parser.jay (fixed_statement): reference the right statement.
* statement.cs (Fixed.Emit): Finish implementing the fixed
statement for the &x case.
svn path=/trunk/mcs/; revision=2517
|
|
* statement.cs (For.Emit): If the test is null, then report that
we do `return', as we wont reach anything afterwards.
(Switch.SwitchGoverningType): Track the expression that matched
the conversion.
* driver.cs: Allow negative numbers as an error code to flag.
svn path=/trunk/mcs/; revision=2011
|
|
svn path=/trunk/mcs/; revision=1462
|
|
svn path=/trunk/mcs/; revision=1173
|
|
svn path=/trunk/mcs/; revision=1040
|
|
* expression.cs (LValue): Add new method AddressOf to be used by
the `&' operator.
Change the argument of Store to take an EmitContext instead of an
ILGenerator, because things like FieldExpr need to be able to call
their children expression to generate the instance code.
(Expression::Error, Expression::Warning): Sugar functions for
reporting errors.
(Expression::MemberLookup): Accept a TypeContainer instead of a
Report as the first argument.
(Expression::ResolvePrimary): Killed. I still want to improve
this as currently the code is just not right.
(Expression::ResolveMemberAccess): Simplify, but it is still
wrong.
(Unary::Resolve): Catch errors in AddressOf operators.
(LocalVariableReference::Emit, ::Store, ::AddressOf): typecast
index to a byte for the short-version, or the compiler will choose
the wrong Emit call, which generates the wrong data.
(ParameterReference::Emit, ::Store): same.
(FieldExpr::AddressOf): Implement.
* typemanager.cs: TypeManager: made public variable instead of
property.
* driver.cs: document --fatal.
* report.cs (ErrorMessage, WarningMessage): new names for the old
Error and Warning classes.
* cs-parser.jay (member_access): Turn built-in access to types
into a normal simplename
svn path=/trunk/mcs/; revision=1009
|
|
svn path=/trunk/mcs/; revision=761
|
|
* class.cs (Operator::CheckUnaryOperator): Correct error number used
to make it coincide with MS' number.
(Operator::CheckBinaryOperator): Ditto.
* ../errors/errors.txt : Remove error numbers added earlier.
* ../errors/cs1019.cs : Test case for error # 1019
* ../errros/cs1020.cs : Test case for error # 1020
* cs-parser.jay : Clean out commented cruft.
(dimension_separators, dimension_separator): Comment out. Ostensibly not
used anywhere - non-reducing rule.
(namespace_declarations): Non-reducing rule - comment out.
* enum.cs (Enum::AddEnum): Rename to AddEnumMember as I was getting confused
with TypeContainer::AddEnum.
* delegate.cs : New file for delegate handling classes.
(Delegate): Class for declaring delegates.
* makefile : Update.
* cs-parser.jay (delegate_declaration): Implement.
svn path=/trunk/mcs/; revision=696
|
|
* cs-parser.jay (overloadable_operator): The semantic value is an
enum of the Operator class.
(operator_declarator): Implement actions.
(operator_declaration): Implement.
* class.cs (Operator::CheckUnaryOperator): New static method to help in checking
validity of definitions.
(Operator::CheckBinaryOperator): Static method to check for binary operators
(TypeContainer::AddOperator): New method to add an operator to a type.
* cs-parser.jay (indexer_declaration): Added line to actually call the
AddIndexer method so it gets added ;-)
* ../errors/errors.txt : Update to include new error numbers. Are these numbers
already taken care of by the MS compiler ?
2001-08-29 Ravi Pratap <ravi@che.iitm.ac.in>
* class.cs (Operator): New class for operator declarations.
(Operator::OpType): Enum for the various operators.
svn path=/trunk/mcs/; revision=688
|
|
svn path=/trunk/mcs/; revision=481
|
|
svn path=/trunk/mcs/; revision=2
|