2010-06-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/MyGenerator.vb: Generated My code like VS2010 does.

2010-06-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Expressions/IfExpression.vb: Added. Handles binary/ternary ifs.

	* Parser/Parser(Expressions).vb: Implement parsing of binary/ternary ifs.

	* vbnc.vbproj: Updated with new file.

	* Resources/Source.xml: Added new error messages.

	* General/Messages.vb:
	* Resources/Errors.resx: Regenerated.

2010-06-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/TypeResolution.vb: IsImplicitlyConvertible: two nullable types can
	convert between eachother if the nulled types are implicitly convertible.

	* General/TypeCache.vb:
	* General/TypeCache.Generated.vb: Regenerated.

	* General/TypeCache.in: Added Nullable.HasValue and Nullable.GetValueOrDefault.

	* General/Helper.vb: Add helper method to pretty-print types.

	* General/CecilHelper.vb: Add helper methods to check if a type is nullable
	and get the nulled type.

	* Expressions/Conversions/CTypeExpression.vb: Implement implicit conversion
	between nullable types.

2010-06-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/MethodBaseDeclaration.vb: Remove unused variable.

2010-06-11  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Emit/Emitter.vb: Implement indirect loads for all types.

2010-06-10  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Statements/AssignStatements/CompoundAssignmentStatement.vb: We need to
	generate the code using the classification, just like normal assignment
	statements do.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Emit/Emitter.DecimalFields.vb:
	* Members/ConstantDeclaration.vb: Use unsigned ints instead of signed ints for
	decimal fields/construction.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	[Restore r138426]
	
	* Expressions/LateBoundAccessToExpression.vb: Fix emission of late
	binding calls to shared methods.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/Helper.vb: We need to box when converting from a value type to
	System.ValueType.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Statements/AssignStatements/AssignmentStatement.vb: ResolveStatement: when
	reclassifying to a value expression, we might get a property group expression,
	which needs to be further reclassified to a property access expression.

	* General/Helper.vb: EmitArgumentsAndCallOrCallVirt: Don't emit an instance
	expression if the method is shared.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* vbnc.sln: Remove unused build configuration.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* TypeDeclarations/ClassDeclaration.vb: The VB spec is inaccurate about
	requirements for the dispose method in group classes - add a comment
	explaining this and fix a possible null reference.

2010-06-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/Version.vb: Updated.

2010-06-08  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* vbnc.rsp: Add more imports.

2010-06-08  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* (all files): Merge from vbnc/cecil branch.

2010-06-08  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* vbnc[9].sln:
	* vbnc[9].vbproj: Upgrade the project/solution files to VS2008.

2010-04-12  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/AssemblyInfo.vb: Bump version slightly.

2010-04-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/Helper.vb: Find DefaultMemberAttribute in implemented interfaces
	too.

	Modified patch by John Lenz (jlenz2@math.uiuc.edu).

2010-04-09  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Expressions/GetRefExpression.vb:
	* Members/ArrayElementInitializer.vb: Implement support for getting address
	of an element in a multi-dimensional array.

	Slightly modified patch by John Lenz <jlenz2@math.uiuc.edu>

2010-03-24  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Descriptors/GenericTypeDescriptor.vb: AllDeclaredMembers: optimize a bit by
	not including private members of imported assemblies.

2010-03-24  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Statements/DoStatement.vb: Add proper error handling.

	* Emit/Emitter.vb: Handle Integer -> Boolean conversions.

2010-01-14  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Parser/Parser(Statements).vb: The parent of a UsingDeclarator needs
	to be the CodeBlock in the UsingStatement, since a UsingDeclarator
	variable can use a variable declared in another UsingDeclarator.

	Thanks to John Lenz (jlenz2@math.uiuc.edu) for providing an initial
	patch which this patch is based on.

2009-12-16  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* vbnc9.vbproj: Remove reference to cecil, that's what the cecil branch
	is for.

2009-12-16  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* TypeDeclarations/TypeDeclaration.vb: Store the grouped field for
	Is/IsNot expressions.

	* TypeDeclarations/ClassDeclaration.vb: Include all ancestors when
	checking if a class is a grouped class.

	* General/AssemblyInfo.vb: Bump version.

	* Expressions/MemberAccessExpression.vb: Implement resolution of
	mygroup collectors on member access expressions.

	* Expressions/LoadFieldExpression.vb: Add support for instance
	expressions.

	* Expressions/InvocationOrIndexExpression.vb: Implement resolution of
	mygroup collectors on method invocation.

	* Expressions/Expression.vb: Implement reclassification of Type to
	PropertyAccessClassification.

	* Expressions/Classifications/TypeClassification.vb: Added a
	CreateAliasExpression helper method, and when checking if a class is a
	grouped class include all ancestors, not only the direct base class.

	* Expressions/Classifications/MethodGroupClassification.vb: Make
	InstanceEpxression read/write to accomodate my group resolution, where
	we may end up with an instance expression after creating the
	classification.

	* Expressions/Classifications/ExpressionClassification.vb: Implement
	reclassifcation from Type -> ExpressionClassification.

	* Expressions/BinaryExpressions/BinaryExpression.vb: Ensure the parents
	are correctly set on the left/right expressions.

	* General/Helper.vb: EmitArgumentsAndCallOrCallVirt: don't emit an
	instance expression even if we have one if the method is static.

2009-10-24  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Expressions/MemberAccessExpression.vb: When resolving the first part
	of a MemberAccessExpression, we can't rule out implicit variables in
	functions.

2009-10-23  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/Helper.vb: When getting operators, check both source and 
	destination type.

	* Expressions/Conversions/CTypeExpression.vb: Check for user defined
	conversions before throwing an exception.

	* Emit/Emitter.vb: Don't emit a box instruction if we want a integer
	to valuetype conversion.

2009-07-22  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Expressions/LateBoundAccessToExpression.vb: Fix emission of late
	binding calls to shared methods.

2009-07-22  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/Scanner.vb: Don't support &D as a decimal number, it's not
	supported by the spec and breaks valid VB code.

2009-07-10  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/TypeManager.vb: Remove another hash table keyed on
	hash code.
	
2009-07-10  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/TypeManager.vb: Don't have a hash table keyed on the
	hash code of an object, there is no guarantee the hash code is
	different for different objects.

2009-05-20  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/Helper.vb: Private types are accessible to siblings.
	Fixes #504822.

	Patch submitted by John Lenz (jlenz2@math.uiuc.edu)

2009-05-20  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Expressions/Conversions/CTypeExpression.vb: Properly box parameters to
	  methods which takes ValueType parameters.

2009-05-12  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Expressions/GetRefExpression.vb: Report the correct location
	  for errors.

2009-03-12  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* vbnc9.vbproj:
	* General/AssemblyInfo.vb: Updated.

	* General/CommandLine.OptionInferTypes.vb: Added.

	* General/CommandLine.vb: Added support for accepting
	  /optioninfer on the commandline.

2008-12-31  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* General/AssemblyInfo.vb:
	* Expressions/MemberAccessExpression.vb: Avoid a NRE and report 30456.

2008-11-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/TypeCache.in, General/TypeCache.vb, General/TypeConverter.vb,
	  Members/ConstantDeclaration.vb, Members/ConstructorDeclaration.vb,
	  Members/Parameter.vb, Statements/ForStatement.vb,
	  TypeDeclarations/TypeDeclaration.vb, Members/MethodDeclaration.vb:
	  Implement constant conversion. Fixes #444828.

2008-11-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/ExternalSubDeclaration.vb: Properly handle external method
	  declarations which doesn't specify neither Ansi, Unicode nor Auto.
	  Fixes #444811.

2008-11-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Parser/Parser(Members2).vb: Parse Alias clauses properly. Fixes
	  #444120.

2008-11-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/ExitStatement.vb: Don't show an error for 'Exit Sub' in a
	  constructor. Fixes #444993.

2008-11-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/BinaryExpressions/LTExpression.vb,
	  Expressions/BinaryExpressions/LEExpression.vb,
	  Expressions/BinaryExpressions/GTExpression.vb,
	  Expressions/BinaryExpressions/GEExpression.vb, Emit/Emitter.vb:
	  Emit unsigned comparison when comparing unsigned int values. Fixes
	  #445479.

2008-10-24  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/ForEachStatement.vb, Resources/Source.xml,
	  Resources/Errors.resx, General/Messages.vb: Don't verify the
	  expression after 'Next' to much. Fixes #392456.

2008-10-24  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Parser/Parser(Expressions).vb: Parser: fix parsing of Not expressions
	  followed by AndAlso/OrElse expressions.

2008-10-24  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Compiler.vb: AddResources: Fix comparison to not include
	  empty string either.

2008-10-24  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/AssemblyInfo.vb, General/Compiler.vb: AddResources: Properly
	  handle resources where name is specified on the command line.

2008-09-22  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/BooleanLiteralExpression.vb: Override Clone. Fixes
	  #428340.

2008-07-29  Rolf Bjarne Kvinge <RKvinge@novell.com>

	* Descriptors/GenericMethodDescriptor.vb: Remove mono-specific workaround which 
	  breaks now that mono is even more MS-compatible.

2008-07-29  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/Expression.vb: Catch any exceptions during code emission of
	  expressions, and print an error with the code location of the expression.

2008-07-29  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/MethodDeclaration.vb: Don't call MethodBuilder.SetReturnType
	  with Nothing, use System.Void. Works around a mono bug.

2008-07-23  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/ConstantDeclaration.vb: Print better output when constant 
	  conversion fails.

2008-04-18  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Tokens/Token.vb: Introduce again the workaround for #324807.

2008-03-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Helper.vb: Use our default base ctor even if it's protected.

2008-03-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Report.vb: Remove dead code.

2008-03-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MemberAccessExpression.vb, Members/EventMemberSpecifier.vb:
	  Report 30574, 30590 and 30506.
	* General/Messages.vb, Resources/Errors.resx, Resources/Source.xml: Updated.
	* Infos/ResolveInfo.vb: Added IsEventResolution.

2008-03-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/OptionExplicitStatement.vb,
	  Statements/OptionStrictStatement.vb: Don't require On/Off in IsMe.
	* Statements/OptionCompareStatement.vb: Don't require Text/Binary in IsMe.
	* Parser/Parser.vb: Add some error handling. Fixes #361412.
	* General/Message.vb: Fix an IOORE.
	* General/Messages.vb, Resources/Errors.resx, Resources/Source.xml: Added
	  more messages.

2008-03-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.snk: Deleted. was never needed.
	* Resources/Errors.resx, Resources/Source.xml, General/Messages.vb: Updated
	  with more error messages.

2008-03-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc9.sln, vbnc9.vbproj: Added VS2008 project/solution files.

2008-03-01  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/CallStatement.vb, Parser/Parser.vb,
	  Descriptors/GenericTypeDescriptor.vb,
	  ConditionalCompilation/ConditionalConstants.vb,
	  ConditionalCompilation/ConditionalExpression.vb, Tokens/Token.vb,
	  Tokens/Span.vb, Types/TokenManager.vb, Types/TypeNameResolutionInfo.vb,
	  General/Helper.vb, General/Version.vb, General/Scanner.vb,
	  General/AssemblyInfo.vb, General/Compiler.vb: Move the conditional
	  compiler into the scanner. Fixes #325331.
	* vbnc.vbproj: Updated.

2008-02-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Interfaces/ITokenReader.vb, Enums/KS.vb, Enums/KSEnumStringAttribute.vb,
	  Enums/TypeCharacters.vb, Enums/TokenType.vb, Enums/Enums.vb,
	  Members/ExternalSubDeclaration.vb, Members/CustomEventDeclaration.vb,
	  Members/OperatorDeclaration.vb, Parser/Parser(Members2).vb,
	  Parser/Parser.vb, Parser/Parser(Expressions).vb,
	  Parser/Parser(Events).vb, Parser/Parser(Types).vb,
	  Parser/Parser(Statements).vb, Parser/Parser(Members).vb,
	  ConditionalCompilation/ConditionalCompilation.vb,
	  ConditionalCompilation/ConditionalExpression.vb, Tokens/Token.vb,
	  Names/Identifier.vb, Types/TokenManager.vb, General/CodeFile.vb,
	  General/Scanner.vb, General/AssemblyInfo.vb: Simply Token to contain
	  less data, access the data directy on the scanner when required.

2008-02-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/SimpleNameExpression.vb, Interfaces/ITokenReader.vb,
	  Statements/ForStatement.vb, Statements/LoopControlVariable.vb,
	  Statements/UsingDeclarator.vb, Statements/CatchStatement.vb,
	  Members/VariableIdentifier.vb, Members/ExternalFunctionDeclaration.vb,
	  Members/ConstantDeclaration.vb, Members/SubSignature.vb,
	  Members/EventHandlerDeclaration.vb, Members/EnumMemberDeclaration.vb,
	  Members/FunctionSignature.vb, Members/ParemeterIdentifier.vb,
	  Members/ConstructorDeclaration.vb, Members/Operand.vb,
	  Members/PropertyGetDeclaration.vb, Members/VariableDeclaration.vb,
	  Members/PropertySetDeclaration.vb, Parser/Parser(Members2).vb,
	  Parser/Parser.vb, Parser/Parser(Expressions).vb,
	  Parser/Parser(Types).vb, Parser/Parser(Statements).vb,
	  Parser/Parser(Members).vb,
	  ConditionalCompilation/ConditionalCompilation.vb, Tokens/Token.vb,
	  Names/Identifier.vb, Types/TokenManager.vb, Types/TypeParameter.vb,
	  Types/ImportsAliasClause.vb, Types/ImportsNamespaceClause.vb,
	  TypeDeclarations/EnumDeclaration.vb,
	  TypeDeclarations/ClassDeclaration.vb,
	  TypeDeclarations/GenericTypeDeclaration.vb,
	  TypeDeclarations/PartialTypeDeclaration.vb,
	  TypeDeclarations/InterfaceDeclaration.vb,
	  TypeDeclarations/TypeDeclaration.vb, General/Report.vb,
	  General/Scanner.vb, General/InternalException.vb, General/Compiler.vb,
	  General/BaseObject.vb, General/TypeDictionary.vb: Removed type character
	  for identifiers from Token.
	* Expressions/InvocationOrIndexExpression.vb: Fix late bound arrays.
	* vbnc.vbproj, General/AssemblyInfo.vb: Updated.
	* Members/AttributeMember.vb: Deleted.
	* Members/AttributeMembers.vb: Deleted
	* General/Helper.vb: Fix a bug with method overloading and signed/unsigned
	  types.

2008-01-10  Rolf Bjarne Kvinge <RKvinge@novell.com>

	* Statements/ContinueStatement.vb: Make sure we use leave whenever necessary.

2007-12-14  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/Attribute.vb: Don't pass XDescriptors to SRE.
	* General/Helper.vb: Added more GetXOrXBuilder methods.

2007-11-06  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* TypeDeclarations/PartialTypeDeclaration.vb: Add attributes to the main
	  declaration as well. Fixes #333952.
	* General/AssemblyInfo.vb: Updated.

2007-11-06  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Parser/Parser.vb, Resources/Source.xml, Resources/Errors.resx,
	  General/Messages.vb: Implemented 30180. Fixes #325340.
	* General/AssemblyInfo.vb: Updated.

2007-11-06  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/NewExpression.vb, Expressions/OperatorExpression.vb,
	  Expressions/PropertyGroupToPropertyAccessExpression.vb,
	  Expressions/NamespaceExpression.vb, Expressions/ArgumentList.vb,
	  Expressions/CaseComparisonExpression.vb,
	  Expressions/TypeOfExpression.vb, Expressions/CachedExpression.vb,
	  Expressions/DotAccessExpression.vb, Expressions/AddressOfExpression.vb,
	  Expressions/UnaryExpressions/UnaryMinusExpression.vb,
	  Expressions/UnaryExpressions/UnaryExpression.vb,
	  Expressions/UnaryExpressions/UnaryNotExpression.vb,
	  Expressions/UnaryExpressions/UnaryPlusExpression.vb,
	  Expressions/GetRefExpression.vb, Expressions/TypeExpression.vb,
	  Expressions/Conversions/CSByteExpression.vb,
	  Expressions/Conversions/TryCastExpression.vb,
	  Expressions/Conversions/CSngExpression.vb,
	  Expressions/Conversions/CIntExpression.vb,
	  Expressions/Conversions/CDecExpression.vb,
	  Expressions/Conversions/CBoolExpression.vb,
	  Expressions/Conversions/CShortExpression.vb,
	  Expressions/Conversions/CDblExpression.vb,
	  Expressions/Conversions/CByteExpression.vb,
	  Expressions/Conversions/CULngExpression.vb,
	  Expressions/Conversions/CStrExpression.vb,
	  Expressions/Conversions/CObjExpression.vb,
	  Expressions/Conversions/CDateExpression.vb,
	  Expressions/Conversions/CCharExpression.vb,
	  Expressions/Conversions/CUIntExpression.vb,
	  Expressions/Conversions/CLngExpression.vb,
	  Expressions/Conversions/CTypeExpression.vb,
	  Expressions/Conversions/DirectCastExpression.vb,
	  Expressions/Conversions/CUShortExpression.vb,
	  Expressions/VariableToValueExpression.vb,
	  Expressions/CompilerGeneratedExpression.vb,
	  Expressions/MemberAccessExpression.vb, Expressions/SimpleExpression.vb,
	  Expressions/CastExpression.vb, Expressions/SimpleNameExpression.vb,
	  Expressions/BinaryExpressions/LShiftExpression.vb,
	  Expressions/BinaryExpressions/EqualsExpression.vb,
	  Expressions/BinaryExpressions/GEExpression.vb,
	  Expressions/BinaryExpressions/BinaryAddExpression.vb,
	  Expressions/BinaryExpressions/BinarySubExpression.vb,
	  Expressions/BinaryExpressions/RShiftExpression.vb,
	  Expressions/BinaryExpressions/IntDivisionExpression.vb,
	  Expressions/BinaryExpressions/ExponentExpression.vb,
	  Expressions/BinaryExpressions/LEExpression.vb,
	  Expressions/BinaryExpressions/AndExpression.vb,
	  Expressions/BinaryExpressions/ConcatExpression.vb,
	  Expressions/BinaryExpressions/XorExpression.vb,
	  Expressions/BinaryExpressions/GTExpression.vb,
	  Expressions/BinaryExpressions/NotEqualsExpression.vb,
	  Expressions/BinaryExpressions/LTExpression.vb,
	  Expressions/BinaryExpressions/ModExpression.vb,
	  Expressions/BinaryExpressions/OrExpression.vb,
	  Expressions/BinaryExpressions/MultExpression.vb,
	  Expressions/BinaryExpressions/LikeExpression.vb,
	  Expressions/BinaryExpressions/Is_IsNotExpression.vb,
	  Expressions/BinaryExpressions/RealDivisionExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb,
	  Expressions/LateBoundAccessToExpression.vb,
	  Expressions/ArrayCreationExpression.vb, Expressions/Expression.vb,
	  Expressions/DeRefExpression.vb, Expressions/VariableExpression.vb,
	  Expressions/DictionaryAccessExpression.vb,
	  Expressions/DelegateOrObjectCreationExpression.vb,
	  Expressions/Classifications/MethodGroupClassification.vb,
	  Expressions/Classifications/ExpressionClassification.vb,
	  Expressions/Classifications/MethodPointerClassification.vb,
	  Expressions/Classifications/PropertyGroupClassification.vb,
	  Expressions/Classifications/EventAccessClassification.vb,
	  Expressions/Classifications/VariableClassification.vb,
	  Expressions/Classifications/PropertyAccessClassification.vb,
	  Expressions/Classifications/ValueClassification.vb,
	  Expressions/CaseRangeExpression.vb, Interfaces/IBaseObject.vb,
	  Statements/ForStatement.vb, Statements/LoopControlVariable.vb,
	  Statements/IfStatement.vb, Statements/EraseStatement.vb,
	  Statements/UsingDeclarator.vb, Statements/ElseIfStatement.vb,
	  Statements/ExitStatement.vb, Statements/OptionExplicitStatement.vb,
	  Statements/CallStatement.vb, Statements/CatchStatement.vb,
	  Statements/CaseClause.vb, Statements/UsingStatement.vb,
	  Statements/SyncLockStatement.vb, Statements/OnErrorStatement.vb,
	  Statements/ErrorStatement.vb, Statements/OptionStrictStatement.vb,
	  Statements/AssignStatements/AssignmentStatement.vb,
	  Statements/AssignStatements/CompoundAssignmentStatement.vb,
	  Statements/AssignStatements/MidAssignStatement.vb,
	  Statements/DoStatement.vb, Statements/ThrowStatement.vb,
	  Statements/RaiseEventStatement.vb,
	  Statements/AddOrRemoveHandlerStatement.vb,
	  Statements/ForEachStatement.vb, Statements/RedimClause.vb,
	  Statements/WhileStatement.vb, Statements/WithStatement.vb,
	  Statements/ReturnStatement.vb, Statements/OptionCompareStatement.vb,
	  Members/EventAccessorDeclarations.vb, Members/ConstantDeclaration.vb,
	  Members/MethodResolver.vb, Members/EventMemberSpecifier.vb,
	  Members/ConversionOperatorDeclaration.vb,
	  Members/RegularEventHandlerDeclaration.vb, Members/Attribute.vb,
	  Members/Parameter.vb, Members/MethodDeclaration.vb,
	  Members/ConstructorDeclaration.vb, Members/ArrayElementInitializer.vb,
	  Members/MemberImplementsClause.vb, Members/AttributeBlock.vb,
	  Members/InterfaceMemberSpecifier.vb, Members/EventDeclaration.vb,
	  Members/VariableDeclaration.vb, Members/AttributeList.vb,
	  Members/MemberDeclarations.vb, Members/PropertySetDeclaration.vb,
	  Parser/Parser(Members2).vb, Parser/Parser.vb,
	  Parser/Parser(Expressions).vb, Parser/Parser(Events).vb,
	  Parser/Parser(Types).vb, Parser/Parser(Statements).vb,
	  Parser/Parser(Members).vb, Emit/Emitter.vb, Emit/EmitInfo.vb,
	  Descriptors/GenericMethodDescriptor.vb,
	  Descriptors/GenericTypeDescriptor.vb,
	  Descriptors/ArrayTypeDescriptor.vb, Descriptors/MethodDescriptor.vb,
	  Descriptors/ParameterDescriptor.vb, Descriptors/EventDescriptor.vb,
	  Descriptors/TypeDescriptor.vb, Descriptors/TypeParameterDescriptor.vb,
	  Descriptors/FieldDescriptor.vb, Descriptors/PropertyDescriptor.vb,
	  Descriptors/ConstructorDescriptor.vb,
	  Descriptors/ByRefTypeDescriptor.vb,
	  ConditionalCompilation/ConditionalCompilation.vb,
	  ConditionalCompilation/ConditionalExpression.vb,
	  Tokens/IdentifierOrKeywordWithTypeArguments.vb,
	  Names/QualifiedIdentifier.vb, Types/TypeParameter.vb,
	  Types/TypeNameResolutionInfo.vb, Types/ConstructedTypeName.vb,
	  Types/ImportsNamespaceClause.vb, Code/CodeBlock.vb,
	  Resources/Source.xml, Resources/Errors.resx,
	  TypeDeclarations/PartialTypeDeclaration.vb,
	  TypeDeclarations/AssemblyDeclaration.vb,
	  TypeDeclarations/TypeDeclaration.vb, General/CodeFile.vb,
	  General/Report.vb, General/GlobalNamespace.vb, General/Helper.vb,
	  General/Namespaces.vb, General/Message.vb, General/AssemblyInfo.vb,
	  General/Namespace.vb, General/TypeResolution.vb, General/Compiler.vb,
	  General/TypeManager.vb, General/CommandLine.vb, General/Define.vb,
	  General/BaseObject.vb, General/Messages.vb: Remove all uses of
	  Helper.NotImplemented, Helper.NotImplementedYet and Helper.AddError.
	  Replaced with reported warnings/errors.

2007-11-05  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/AssemblyInfo.vb: Updated.
	* General/TypeCache.in, General/TypeCache.vb: Added
	  MS_VB_CS_DesignerGeneratedAttribute.
	* TypeDeclarations/ClassDeclaration.vb: Implemented automatic invocation of
	  InitializeComponent. Fixes #333962.

2007-11-05  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/DelegateOrObjectCreationExpression.vb: Allow for creation of
	  type parameter with a 'Structure' constraint. Fixes #333961.
	* Types/ConstraintList.vb: Implemented 32101-32104.
	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb: Added
	  32101-32106.
	* General/AssemblyInfo.vb: Updated.

2007-11-05  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb: Added
	  31509.
	* General/Compiler.vb: Guard resource reading in a try block, to be able to
	  display an error instead of a crash.
	* General/AssemblyInfo.vb: Updated.

2007-11-05  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/LiteralExpression.vb,
	  Expressions/PropertyGroupToValueExpression.vb,
	  Expressions/Conversions/ConversionExpression.vb,
	  Expressions/PropertyAccessToValueExpression.vb: Implemented AsString.
	* Expressions/ArgumentList.vb: Added ArgumentsAsTypeString.
	* Expressions/Argument.vb: Added AsTypeString.
	* Expressions/Conversions/CIntExpression.vb, Members/MethodResolver.vb,
	  General/AssemblyInfo.vb: Updated.
	* Expressions/InvocationOrIndexExpression.vb: Implemented AsString. Fix
	  resolution of default properties to resolve to a
	  PropertyAccessClassification, and emit that correctly.
	* Types/ImportsNamespaceClause.vb: Don't return true unconditionally.

2007-10-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Compiler.vb: Only create a Main method for a main:x form if x
	  actually is a form. Better main-not-found error messages.
	* General/MyGenerator.vb: Generate a Main method even if the -main
	  commandline argument is specified. Fixes #333403.
	* Descriptors/TypeDescriptor.vb: Added a ClearCache method.
	* Expressions/Expression.vb: Resolve default instances correctly.
	* General/MemberCache.vb: Implement reloading of the cache.
	* TypeDeclarations/ClassDeclaration.vb: Reload the type cache after adding
	  members.

2007-10-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/CommandLine.vb: If no Option Explicit is specified, default to On.
	  Fixes #332869.

2007-10-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/DelegateOrObjectCreationExpression.vb,
	  Descriptors/TypeParameterDescriptor.vb, Types/TypeParameter.vb,
	  General/TypeCache.vb, General/TypeCache.in: Implement construction of
	  generic type parameters (fixes #332868).
	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb: Added
	  32046 and 32085.
	* General/Helper.vb: Fixed warning.
	* vbnc.vbproj: Flush.

2007-10-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Parser/Parser.vb: "Option Strict Off will probably fail" is a warning, not
	  an error.
	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb: Add a
	  general warning.

2007-10-01  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/CommandLine.vb: Use result correctly.
	* General/Messages.vb: Message #2009 is a warning, as well as 90000+ are all
	  errors.
	* General/Report.vb: Don't quit compiling on saved warnings.

2007-10-01  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Compiler.vb: Added changes as suggested in #328106.

2007-10-01  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb: Added
	  more messages.
	* General/Resources.vb, General/CommandLine.vb: Report correct errors for
	  missing files. Fixes #328101. Minor refactoring as well.
	* General/Report.vb: Fix comparison.
	* General/Compiler.vb: If an error occured during commandline parsing, show
	  the error, not the help.

2007-10-01  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* ConditionalCompilation/ConditionalCompilation.vb: Fix #235976, the
	  conditional constant value is the object value, not the string value
	  written in the code.
	* General/CommandLine.vb: Added comment.

2007-09-24  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/MethodResolver.vb: Start implementing selection of the less
	  generic method in method resolution.
	* Members/VariableInitializer.vb: Resolve addressof variable initializers
	  correctly (fixes #325338).
	* Emit/Emitter.vb: Don't use ldflda for static fields, but ldsflda. Fixes
	  #327596.
	* General/Helper.vb: ParseLine: correctly parse lines with embedded and
	  escaped quotes. Fixes #325976. Start implementing selection of the less
	  generic method in method resolution.
	* General/MemberCache.vb: Cache interface members correctly (if shadowed in
	  one hierarchy path, shadowed in all). Fixes #325346. Fix cache
	  flattening (and #320964).

2007-08-14  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Tokens/Token.vb: Undo s390 hack.

2007-08-14  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/InvocationOrIndexExpression.vb: Implement VBNC30075.
	* Statements/ExitStatement.vb: Implement VBNC30065-67.
	* Statements/AssignStatements/AssignmentStatement.vb: Implement VBNC30062.
	* Members/PropertyDeclaration.vb: Remove a couple asserts that might fail if
	  compiling incorrect code.
	* Parser/Parser.vb: Implement VBNC30203 and VBNC32035. Change some parser
	  functions to return boolean (success/failure) values.
	* Parser/Parser(Expressions).vb: Don't show end of statement expected errors
	  if there have been any other errors.
	* Parser/Parser(Statements).vb: Implement VBNC30084.
	* Parser/Parser(Members).vb: Implement VBNC30126, VBNC30125 and VBNC30124.
	* ConditionalCompilation/ConditionalCompilation.vb: Implement VBNC30013 and
	  VBNC30014.
	* Tokens/Token.vb: Add some debug spew.
	* Types/TokenManager.vb: Added CurrentLocation.
	* General/CodeFile.vb: Added DoesLineEndWithLineContinuation.
	* General/Helper.vb: Implement VBNC30074.
	* General/Scanner.vb: Treat end of file as end of line as well. Implement
	  VBNC30034. Made a few helper functions public. When reporting VBNC30037,
	  skip everything up to next newline.
	* General/Compiler.vb: Update according to parser changes.

2007-08-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Emit/Emitter.vb: Implement ByRef Char parameter loading.

2007-08-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Resources/GenerateCodeAndResX.sh: Duh. It's 42024, not 42021.

2007-08-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/FunctionSignature.vb: Implemented VBNC30210 and VBNC42021.
	* ConditionalCompilation/ConditionalExpression.vb: Fix conditional
	  expression parsing, it was badly wrong.
	* General/Compiler.vb: Added better error reporting if crashing while
	  parsing.
	* General/Messages.vb, Resources/Errors.resx, Resources/Source.xml: Added
	  VBNC42021.

2007-08-10  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/ArrayElementInitializer.vb: An enum is a special value type.

2007-08-10  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/ArrayElementInitializer.vb: Fix variable initialization for
	  non-primitive value types.

2007-08-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/SimpleNameExpression.vb: Implement imported fields from
	  modules.

2007-08-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/ArgumentList.vb: If a byref parameter's expression doesn't
	  match the parameters's type, create a temporary value (of the correct
	  type), and store/restore the value there.
	* Expressions/MeExpression.vb,
	  Expressions/PropertyGroupToValueExpression.vb,
	  Expressions/MyBaseExpression.vb, Expressions/MyClassExpression.vb:
	  Implemented AsString.
	* Expressions/Conversions/CStrExpression.vb,
	  Expressions/BinaryExpressions/ConcatExpression.vb: Implement Char() to
	  String conversion.
	* Expressions/CompilerGeneratedExpression.vb: Emit RHSExpression if
	  necessary.
	* Expressions/MemberAccessExpression.vb: Resolve: Lookup the member
	  according to what the current type can actually see. Implement a few
	  error messages if no members are found. Don't allow access to an private
	  field from outside the class.
	* Expressions/SimpleNameExpression.vb, Enums/Enums.vb,
	  Members/NamedBaseList.vb, Members/MemberDeclarations.vb,
	  Members/OperatorDeclaration.vb, Parser/Parser.vb,
	  Descriptors/ArrayTypeDescriptor.vb, Descriptors/TypeDescriptor.vb,
	  Descriptors/GenericPropertyDescriptor.vb,
	  ConditionalCompilation/ConditionalConstants.vb, Tokens/Token.vb,
	  Types/ImportsClauses.vb, Types/TypeNameResolutionInfo.vb,
	  TypeDeclarations/PartialTypeDeclaration.vb,
	  TypeDeclarations/AssemblyDeclaration.vb,
	  TypeDeclarations/TypeDeclaration.vb, General/Helper.vb,
	  General/Namespaces.vb, General/Namespace.vb, General/TypeCache.vb,
	  General/Index.vb, General/Compiler.vb, General/TypeManager.vb,
	  General/Defines.vb, General/NamespaceDictionary.vb, General/Define.vb,
	  General/TypeDictionary.vb: Moved StringComparer from NameResolution to
	  Helper.
	* Expressions/BinaryExpressions/BinarySubExpression.vb,
	  Expressions/BinaryExpressions/MultExpression.vb: API fix.
	* Expressions/BinaryExpressions/BinaryExpression.vb: Implement Char() <->
	  String conversion.
	* Expressions/InvocationOrIndexExpression.vb: Implement 30471.
	* Expressions/VariableExpression.vb: Added.
	* Expressions/Classifications/VariableClassification.vb: Move some code to
	  VariableExpression.
	* Statements/CallStatement.vb: Set the parent of the target to the
	  statement.
	* Statements/AssignStatements/AssignmentStatement.vb: Set parent of the
	  sides to the statement.
	* Statements/AssignStatements/CompoundAssignmentStatement.vb: If the
	  compound assignment is an indexed statement, store the indices in
	  temporary variables to avoid executing their expressions twice.
	* Statements/AddOrRemoveHandlerStatement.vb: Only generate the event code if
	  the handler isn't shared.
	* vbnc.vbproj, General/AssemblyInfo.vb: Updated.
	* Members/MethodResolver.vb: Distinguish between 30057 and 30455. Minor
	  array index fix for named argument.
	* Members/Modifiers.vb: An enum field is public.
	* Members/VariableDeclaration.vb: Move resolution of the identifier's array
	  modifiers to ResolveTypeReferences.
	* Parser/ParsedObject.vb: Remove redundant Conditional attributes.
	* Descriptors/GenericTypeDescriptor.vb: GetGenericTypeDefinition: never
	  return nothing.
	* Descriptors/MethodDescriptor.vb, Descriptors/EventDescriptor.vb,
	  Descriptors/FieldDescriptor.vb, Descriptors/ConstructorDescriptor.vb:
	  Implement Equals.
	* Descriptors/TypeParameterDescriptor.vb: Moved StringComparer from
	  NameResolution to Helper and implement Equals.
	* Code/CodeBlock.vb: Added AddStatement(After|Before), used to insert
	  statements at will.
	* TypeDeclarations/ClassDeclaration.vb: When getting the base class' default
	  constructor, make sure the base class' implicit members have been
	  created. Moved StringComparer from NameResolution to Helper.
	* General/Report.vb: Remove unused function.
	* General/TypeResolution.vb: Added
	  GetIntrinsicTypesImplicitlyConvertibleFrom: does exactly what the name
	  says it should do.
	* General/TypeConverter.vb: Added a *DefinedTypes which describes for which
	  types an operator is defined.
	* General/MemberCache.vb: Redo member cache: we now cache all members
	  according to the visibility required to see them.
	* General/NameResolution.vb: Deleted.
	* General/Messages.vb: Implemented two more messages.

2007-08-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Resources/Errors.resx, Resources/Source.xml: Added more messages.

2007-08-07  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Compiler.vb: The .NET suffix isn't used anymore for VB.
	* General/CommandLine.vb: Updated commandline comment for VB8 and 9.

2007-07-27  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/OnErrorStatement.vb, Statements/ResumeStatement.vb,
	  Code/CodeBlock.vb: Make the unstructured exception handling even
	  worse.

2007-07-27  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/ExternalSubDeclaration.vb, Members/MemberDeclaration.vb,
	  Descriptors/MethodDescriptor.vb: Declare methods are always Shared.

2007-07-27  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/ForStatement.vb: Rework, simplify and implement some
	  missing cases.
	* General/Helper.vb: Implement property copy-back for method calls with
	  byref property arguments.
	* General/TypeCache.vb, General/TypeCache.in: Added ForLoopControl
	  members.

2007-07-26  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/Classifications/VariableClassification.vb,
	  Members/VariableDeclaration.vb: Emit RuntimeHelpers.GetObjectValue
	  before assignment of values with System.Object type.
	* Members/VariableInitializer.vb: Added some helper functions.

2007-07-26  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/SimpleNameExpression.vb: Treat a constant local variable
	  as a value classification.
	* Expressions/LateBoundAccessToExpression.vb: Implement late binding
	  with named arguments.

2007-07-26  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MethodGroupToValueExpression.vb: Show errors if method
	  resolution failed.
	* Expressions/Classifications/VariableClassification.vb: This is just
	  getting worse...
	* Members/VariableInitializer.vb: Bail out resolution.
	* Emit/Emitter.vb: Emit correct StoreIndirect instruction for value
	  types.

2007-07-26  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/Conversions/CTypeExpression.vb: Handle a few more cases
	  of conversion.
	* Expressions/Classifications/VariableClassification.vb: Simplify
	  emission of byref parameters, and fix a few tests.

2007-07-23  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/Conversions/CBoolExpression.vb,
	  Expressions/SimpleNameExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb,
	  Statements/CatchStatement.vb, Statements/OnErrorStatement.vb,
	  Parser/Parser.vb, Parser/Parser(Members).vb,
	  ConditionalCompilation/ConditionalCompilation.vb,
	  Names/QualifiedIdentifier.vb, Types/TypeNameResolutionInfo.vb,
	  General/Scanner.vb, General/InternalException.vb,
	  General/AssemblyInfo.vb, Types/TokenManager.vb: Use
	  Token.IsSomething helper method.
	* Tokens/Token.vb: Changed Token from structure to class again
	  (temporary s390/x workaround). Added a IsSomething helper method
	  that's the only other place this hack will be removed once the
	  issue is fixed.
	* General/TypeManager.vb: Load vbruntime if it has been referenced.
	* Infos/ResolveInfo.vb: Add a CanBeImplicitSimpleName to allow for
	  Option Explicit Off.

2007-07-19  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Tokens/Token.vb: Workaround bug #82137 for s390/s390x.

2007-07-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/PropertyGroupToPropertyAccessExpression.vb,
	  Expressions/PropertyGroupToValueExpression.vb,
	  Expressions/MemberAccessExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb: Implement late bound
	  handling.
	* Expressions/ArgumentList.vb: Implement replacement and verification
	  of property parameters.
	* Expressions/Conversions/CStrExpression.vb,
	  Expressions/Conversions/CTypeExpression.vb: Char() and Strings are
	  convertible between eachother.
	* Expressions/CompilerGeneratedExpression.vb: Add a
	  LoadElementExpression.
	* Expressions/SimpleNameExpression.vb: Implement Option Explicit Off.
	* Expressions/BinaryExpressions/BinaryAddExpression.vb,
	  Expressions/BinaryExpressions/ConcatExpression.vb: String
	  concatenation is allowed for DBNull values, if only 1 of the
	  operands is a DBNull value.
	* Expressions/BinaryExpressions/BinaryExpression.vb: Fix a few error
	  messages to include location.
	* Expressions/LateBoundAccessToExpression.vb: Fix eol.
	* Expressions/DictionaryAccessExpression.vb: Implement late bound case.
	* Expressions/Classifications/MethodGroupClassification.vb,
	  Expressions/Classifications/PropertyGroupClassification.vb: Save
	  the resolver, it knows if the method group is a late bound group or
	  not.
	* Expressions/Classifications/LateBoundAccessClassification.vb: Add a
	  LateBoundType.
	* Members/MethodResolver.vb: Add a few errors, remove dead code, handle
	  late binding.
	* Members/Parameter.vb: Add a ConstantValue property that has the
	  correct constant type.
	* Members/VariableInitializer.vb: Don't resolve expressions twice.
	* Emit/Emitter.vb: Add missing case.
	* Descriptors/MethodDescriptor.vb: Methods marked as 'Overrides' are
	  not NewSlot methods, nor Final methods.
	* Descriptors/ParameterDescriptor.vb: Don't believe
	  Parameter.ConstantExpression, might have wrong type. Use the
	  resolved constant value.
	* Descriptors/PropertyDescriptor.vb: Implement CanRead/Write.
	* Resources/Source.xml, Resources/Errors.resx, General/TypeCache.vb:
	  Updated.
	* General/Helper.vb: Tabs.
	* General/TypeCache.in: More types and methods.
	* General/Messages.vb: More messages.

2007-07-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MemberAccessExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb,
	  Expressions/Classifications/LateBoundAccessClassification.vb,
	  Expressions/Classifications/PropertyAccessClassification.vb,
	  Statements/CallStatement.vb,
	  Statements/AssignStatements/AssignmentStatement.vb,
	  Members/ConstructorDeclaration.vb, Parser/Parser.vb,
	  Parser/Parser(Expressions).vb,
	  TypeDeclarations/AssemblyDeclaration.vb, General/Scanner.vb,
	  General/TypeCache.vb, General/TypeManager.vb,
	  General/MemberCache.vb, General/TypeCache.in, Infos/ResolveInfo.vb:
	  Start implementing late binding.
	* Expressions/Expression.vb: Implement default instances and late
	  binding.
	* Expressions/Classifications/MethodGroupClassification.vb,
	  Expressions/Classifications/PropertyGroupClassification.vb,
	  Members/MethodResolver.vb: Add a ShowErrors to the method
	  resolution to replay resolution, showing errors.
	* Expressions/Classifications/ExpressionClassification.vb,
	  Expressions/Classifications/TypeClassification.vb,
	  Expressions/Classifications/ValueClassification.vb,
	  TypeDeclarations/ClassDeclaration.vb: Implement default instances.
	* vbnc.vbproj: Update.
	* Descriptors/TypeDescriptor.vb: Always use Helper.CompareType instead
	  of Type.Equals
	* Resources/Source.xml, Resources/Errors.resx: A few more messages.
	* General/Helper.vb: Start implementing late binding and delete some
	  dead code.
	* General/MyGenerator.vb: Fix line endings.
	* General/Messages.vb: Add a few messages.

2007-07-06  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MemberAccessExpression.vb: Add error message.
	* General/AssemblyInfo.vb: Update.

2007-06-22  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MemberAccessExpression.vb,
	  Expressions/SimpleNameExpression.vb,
	  Members/EventMemberSpecifier.vb: Debug info.
	* vbnc.vbproj, General/AssemblyInfo.vb: Update.
	* Parser/Parser.vb: Show a real warning.
	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb: Add
	  a generic warning.
	* General/Message.vb: Fix message string generation (wasn't including
	  filename).
	* General/TypeConverter.vb: Duh.

2007-05-30  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Emit/Emitter.vb: Small crasher fix.

2007-05-30  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Descriptors/ParameterDescriptor.vb: Implement RawDefaultValue.
	* General/Helper.vb: Only use Missing.Value for missing optional
	  default value if the default value is actually missing
	  (RawDefaultValue is DBNull.Value). Remove some dead code.

2007-05-30  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/ExternalSubDeclaration.vb: Make his actually work.
	* Members/VariablePropertyInitializer.vb: Parse external methods
	  correctly.
	* General/MethodBaseDeclaration.vb: Declare methods doesn't have method
	  body.

2007-05-25  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/CodeFile.vb: Create the symbol document when needed (during
	  initalization is too early).
	* General/Report.vb: Add a real error message for an assertion failure.

2007-05-21  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/Conversions/ConversionExpression.vb,
	  Expressions/MemberAccessExpression.vb,
	  Expressions/BinaryExpressions/Is_IsNotExpression.vb,
	  Statements/ReturnStatement.vb: Short-circuit resolution.
	* Tokens/IdentifierOrKeyword.vb: Remove comment.
	* Resources/Source.xml, Resources/Errors.resx, General/Messages.vb:
	  Update.
	* General/Resources.vb: Add error handling.
	* General/Report.vb: Remove a few unused methods and make SaveMessage
	  return a boolean indicating whether the message is an warning or
	  not.
	* General/Compiler.vb: Show saved messages during commandline parsing.
	* General/CommandLine.vb: GetFullPaths: don't show any errors here.
	  Don't use Directory.GetFiles unless it's a pattern. AddFile: show
	  error if no file was found and it's not a file pattern.

2007-05-20  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Interfaces/IIntegralLiteralToken.vb, Interfaces/ILiteralToken.vb,
	  Enums/TypeCharactersEnumString.vb,
	  Enums/BuiltInDataTypeEnumStringAttribute.vb,
	  Members/ConstantMemberDeclaration.vb,
	  Members/ConstructorMember.MemberConstructorInfo.vb,
	  Tokens/DecimalLiteralToken.vb, Tokens/IntegralLiteralToken.vb,
	  Tokens/IdentifierToken.vb, Tokens/StringLiteralToken.vb,
	  Tokens/KeywordToken.vb, Tokens/EndOfCodeToken.vb,
	  Tokens/FloatingPointLiteralToken.vb, Tokens/DateLiteralToken.vb,
	  Tokens/CharLiteralToken.vb, Tokens/EndOfFileToken.vb,
	  Tokens/LiteralToken.vb, Tokens/EndOfLineToken.vb, Tokens/SymbolToken.vb,
	  Tokens/CommandLineSpan.vb, Types/MemberImplementsClauses.vb: Removed, no
	  longer necessary.
	* Enums/ModifierMasks.vb, Enums/TokenType.vb: Added.
	* Members/Modifiers.vb, Tokens/Token.vb, Tokens/Span.vb: Changed to a
	  structure.
	* The rest: Required changes due to changing types from class to structure.

2007-05-19  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/Modifiers.vb, Tokens/Token.vb, Tokens/Span.vb: Changed to a
	  structure.
	* Enums/ModifierMasks.vb, Enums/TokenType.vb: Added.
	* Tokens/IdentifierToken.vb, Tokens/IntegralLiteralToken.vb,
	  Tokens/KeywordToken.vb, Tokens/LiteralToken.vb,
	  Tokens/DateLiteralToken.vb, Tokens/StringLiteralToken.vb,
	  Tokens/SymbolToken.vb, Tokens/FloatingPointLiteralToken.vb,
	  Tokens/EndOfLineToken.vb, Interfaces/ILiteralToken.vb,
	  Members/ConstantMemberDeclaration.vb, Tokens/CharLiteralToken.vb,
	  Tokens/CommandLineSpan.vb,
	  Members/ConstructorMember.MemberConstructorInfo.vb,
	  Tokens/DecimalLiteralToken.vb, Tokens/EndOfCodeToken.vb,
	  Tokens/EndOfFileToken.vb, Interfaces/IIntegralLiteralToken.vb,
	  Enums/TypeCharactersEnumString.vb,
	  Enums/BuiltInDataTypeEnumStringAttribute.vb,
	  Types/MemberImplementsClauses.vb: Deleted, not needed anymore.
	* The rest: Changes required by changing types from class to structure.

2007-05-18  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/AddOrRemoveHandlerStatement.vb: Small fix for using
	  variables in event handler statements.

2007-05-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.vbproj: Updated.

2007-05-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.vbproj: Updated.

2007-05-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.vbproj: Updated.

2007-05-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.vbproj: Updated.

2007-05-12  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/BooleanLiteralExpression.vb,
	  Expressions/TypeOfExpression.vb,
	  Expressions/UnaryExpressions/UnaryMinusExpression.vb,
	  Expressions/UnaryExpressions/UnaryExpression.vb,
	  Expressions/UnaryExpressions/UnaryNotExpression.vb,
	  Expressions/UnaryExpressions/UnaryPlusExpression.vb,
	  Expressions/GetRefExpression.vb, Expressions/GetTypeExpression.vb,
	  Expressions/Conversions/CSByteExpression.vb,
	  Expressions/Conversions/CSngExpression.vb,
	  Expressions/Conversions/CIntExpression.vb,
	  Expressions/Conversions/CDecExpression.vb,
	  Expressions/Conversions/CBoolExpression.vb,
	  Expressions/Conversions/CShortExpression.vb,
	  Expressions/Conversions/CDblExpression.vb,
	  Expressions/Conversions/CByteExpression.vb,
	  Expressions/Conversions/CULngExpression.vb,
	  Expressions/Conversions/CStrExpression.vb,
	  Expressions/Conversions/CObjExpression.vb,
	  Expressions/Conversions/CDateExpression.vb,
	  Expressions/Conversions/CCharExpression.vb,
	  Expressions/Conversions/CUIntExpression.vb,
	  Expressions/Conversions/CLngExpression.vb,
	  Expressions/Conversions/CTypeExpression.vb,
	  Expressions/Conversions/CUShortExpression.vb,
	  Expressions/MemberAccessExpression.vb,
	  Expressions/BinaryExpressions/LShiftExpression.vb,
	  Expressions/BinaryExpressions/OrElseExpression.vb,
	  Expressions/BinaryExpressions/EqualsExpression.vb,
	  Expressions/BinaryExpressions/GEExpression.vb,
	  Expressions/BinaryExpressions/BinaryAddExpression.vb,
	  Expressions/BinaryExpressions/BinarySubExpression.vb,
	  Expressions/BinaryExpressions/IntDivisionExpression.vb,
	  Expressions/BinaryExpressions/RShiftExpression.vb,
	  Expressions/BinaryExpressions/LEExpression.vb,
	  Expressions/BinaryExpressions/ExponentExpression.vb,
	  Expressions/BinaryExpressions/AndExpression.vb,
	  Expressions/BinaryExpressions/ConcatExpression.vb,
	  Expressions/BinaryExpressions/XorExpression.vb,
	  Expressions/BinaryExpressions/GTExpression.vb,
	  Expressions/BinaryExpressions/NotEqualsExpression.vb,
	  Expressions/BinaryExpressions/LTExpression.vb,
	  Expressions/BinaryExpressions/ModExpression.vb,
	  Expressions/BinaryExpressions/OrExpression.vb,
	  Expressions/BinaryExpressions/AndAlsoExpression.vb,
	  Expressions/BinaryExpressions/MultExpression.vb,
	  Expressions/BinaryExpressions/LikeExpression.vb,
	  Expressions/BinaryExpressions/BinaryExpression.vb,
	  Expressions/BinaryExpressions/Is_IsNotExpression.vb,
	  Expressions/BinaryExpressions/RealDivisionExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb,
	  Expressions/ArrayCreationExpression.vb, Expressions/Expression.vb,
	  Expressions/DictionaryAccessExpression.vb,
	  Expressions/DelegateOrObjectCreationExpression.vb,
	  Expressions/Classifications/MethodGroupClassification.vb,
	  Expressions/Classifications/ExpressionClassification.vb,
	  Expressions/Classifications/LateBoundAccessClassification.vb,
	  Expressions/Classifications/MethodPointerClassification.vb,
	  Expressions/Classifications/VariableClassification.vb,
	  Enums/TypeCharacters.vb, Statements/ForStatement.vb,
	  Statements/IfStatement.vb, Statements/UsingDeclarator.vb,
	  Statements/EndStatement.vb, Statements/ElseIfStatement.vb,
	  Statements/CallStatement.vb, Statements/CatchStatement.vb,
	  Statements/CaseClause.vb, Statements/UsingStatement.vb,
	  Statements/SyncLockStatement.vb, Statements/StopStatement.vb,
	  Statements/OnErrorStatement.vb, Statements/ErrorStatement.vb,
	  Statements/ResumeStatement.vb,
	  Statements/AssignStatements/AssignmentStatement.vb,
	  Statements/AssignStatements/MidAssignStatement.vb,
	  Statements/DoStatement.vb, Statements/ForEachStatement.vb,
	  Statements/RedimClause.vb, Statements/WhileStatement.vb,
	  Members/ConstantDeclaration.vb, Members/MethodResolver.vb,
	  Members/RegularEventHandlerDeclaration.vb, Members/SubSignature.vb,
	  Members/FunctionSignature.vb, Members/Parameter.vb,
	  Members/ConstructorDeclaration.vb,
	  Members/ArrayElementInitializer.vb, Members/VariableDeclaration.vb,
	  Emit/Emitter.vb, Descriptors/ArrayTypeDescriptor.vb,
	  Descriptors/TypeDescriptor.vb,
	  Descriptors/TypeParameterDescriptor.vb,
	  Descriptors/FieldDescriptor.vb,
	  ConditionalCompilation/ConditionalConstant.vb,
	  ConditionalCompilation/ConditionalExpression.vb, Code/CodeBlock.vb,
	  TypeDeclarations/EnumDeclaration.vb,
	  TypeDeclarations/ClassDeclaration.vb,
	  TypeDeclarations/ModuleDeclaration.vb,
	  TypeDeclarations/DelegateDeclaration.vb,
	  TypeDeclarations/AssemblyDeclaration.vb,
	  TypeDeclarations/StructureDeclaration.vb,
	  TypeDeclarations/TypeDeclaration.vb, General/Helper.vb,
	  General/AssemblyInfo.vb, General/TypeResolution.vb,
	  General/TypeCache.vb, General/Compiler.vb, General/TypeManager.vb,
	  General/MethodBaseDeclaration.vb, General/MemberCache.vb,
	  General/NameResolution.vb: Refactored TypeCache, renaming cached
	  methods and types in a consistent way.
	* General/TypeCache.in: Added.

2007-05-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Parser/Parser(Statements).vb: Accept grammar MS accepts as well
	  (ElseIf can be written as Else If).

2007-05-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Types/TokenManager.vb: When accepting newlines accept as many as
	  possible.

2007-05-06  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/PropertyGroupToPropertyAccessExpression.vb,
	  Expressions/UnaryExpressions/UnaryMinusExpression.vb,
	  Expressions/UnaryExpressions/UnaryExpression.vb,
	  Expressions/UnaryExpressions/UnaryNotExpression.vb,
	  Expressions/GetRefExpression.vb,
	  Expressions/Conversions/CSByteExpression.vb,
	  Expressions/Conversions/CSngExpression.vb,
	  Expressions/Conversions/CIntExpression.vb,
	  Expressions/Conversions/CBoolExpression.vb,
	  Expressions/Conversions/CDecExpression.vb,
	  Expressions/Conversions/CShortExpression.vb,
	  Expressions/Conversions/CDblExpression.vb,
	  Expressions/Conversions/CByteExpression.vb,
	  Expressions/Conversions/CULngExpression.vb,
	  Expressions/Conversions/CStrExpression.vb,
	  Expressions/Conversions/CObjExpression.vb,
	  Expressions/Conversions/CCharExpression.vb,
	  Expressions/Conversions/CDateExpression.vb,
	  Expressions/Conversions/CUIntExpression.vb,
	  Expressions/Conversions/CLngExpression.vb,
	  Expressions/Conversions/CTypeExpression.vb,
	  Expressions/Conversions/CUShortExpression.vb,
	  Expressions/BoxExpression.vb,
	  Expressions/BinaryExpressions/OrElseExpression.vb,
	  Expressions/BinaryExpressions/LShiftExpression.vb,
	  Expressions/BinaryExpressions/EqualsExpression.vb,
	  Expressions/BinaryExpressions/GEExpression.vb,
	  Expressions/BinaryExpressions/BinaryAddExpression.vb,
	  Expressions/BinaryExpressions/BinarySubExpression.vb,
	  Expressions/BinaryExpressions/RShiftExpression.vb,
	  Expressions/BinaryExpressions/IntDivisionExpression.vb,
	  Expressions/BinaryExpressions/LEExpression.vb,
	  Expressions/BinaryExpressions/AndExpression.vb,
	  Expressions/BinaryExpressions/XorExpression.vb,
	  Expressions/BinaryExpressions/GTExpression.vb,
	  Expressions/BinaryExpressions/NotEqualsExpression.vb,
	  Expressions/BinaryExpressions/LTExpression.vb,
	  Expressions/BinaryExpressions/ModExpression.vb,
	  Expressions/BinaryExpressions/OrExpression.vb,
	  Expressions/BinaryExpressions/AndAlsoExpression.vb,
	  Expressions/BinaryExpressions/MultExpression.vb,
	  Expressions/BinaryExpressions/BinaryExpression.vb,
	  Expressions/BinaryExpressions/RealDivisionExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb,
	  Expressions/DictionaryAccessExpression.vb,
	  Expressions/Classifications/MethodPointerClassification.vb,
	  Expressions/Classifications/VariableClassification.vb,
	  Statements/ForStatement.vb, Statements/ErrorStatement.vb,
	  Statements/AssignStatements/CompoundAssignmentStatement.vb,
	  Statements/DoStatement.vb, Statements/ForEachStatement.vb,
	  Members/PropertyDeclaration.vb, Members/ConstantDeclaration.vb,
	  Members/SubSignature.vb, Members/EventHandlerDeclaration.vb,
	  Members/SubDeclaration.vb, Members/Parameter.vb,
	  Members/ConstructorDeclaration.vb,
	  Members/PropertyGetDeclaration.vb, Members/VariableDeclaration.vb,
	  Members/PropertySetDeclaration.vb, Tokens/IntegralLiteralToken.vb,
	  Types/TokenManager.vb, Types/ImportsClauses.vb,
	  General/TypeResolution.vb: API updates.
	* Expressions/AddressOfExpression.vb: Don't resolve any
	  AddressOfExpression, they're supposed to be resolved by whatever
	  expression/statement they're being assigned to.
	* Expressions/Conversions/ConversionExpression.vb: Add
	  GetTypeConversion that gets the specific type conversion according
	  to the desired type.
	* Expressions/CompilerGeneratedExpression.vb: Add LoadLocalExpression
	  and ValueOnStackExpression.
	* Expressions/MemberAccessExpression.vb: API updates and create fewer
	  temporary lists.
	* Expressions/SimpleNameExpression.vb: Create fewer temporary lists and
	  use indexers instead of enumerators.
	* Expressions/BinaryExpressions/ExponentExpression.vb: This is a power
	  expression, not a mod expression, so emit the powered value, not
	  the modded value.
	* Expressions/ArrayCreationExpression.vb: EmitElementInitializer: If
	  we're initializing an array of structures, load the structure's
	  address.
	* Expressions/ParenthesizedExpression.vb, Statements/IfStatement.vb,
	  Statements/CallStatement.vb, Statements/ThrowStatement.vb,
	  Members/VariableInitializer.vb: Short-circuit resolution.
	* Expressions/Expression.vb: Add missing parts for delegates and
	  AddressOf expressions.
	* Expressions/MethodPointerToValueExpression.vb: Currently commented
	  out.
	* Expressions/DelegateOrObjectCreationExpression.vb: Add better error
	  handling, and resolve delegate expressions according to the new
	  logic.
	* Expressions/Classifications/MethodGroupClassification.vb: Use
	  indexers instead of enumerators.
	* Expressions/Classifications/LateBoundAccessClassification.vb: Start
	  implementing this.
	* Enums/TypeCharacters.vb: Add TypeCharacterToType.
	* Statements/CaseClause.vb: Create type conversions for case clauses.
	* Statements/AssignStatements/AssignmentStatement.vb: Resolve delegates
	  according to new logic.
	* Statements/AssignStatements/MidAssignStatement.vb: Resolve Mid
	  expressions.
	* Statements/AddOrRemoveHandlerStatement.vb: Resolve according to new
	  delegate resolution logic.
	* Statements/WithStatement.vb: Don't use a temporary variable if the
	  with expression is a structure.
	* vbnc.vbproj, Resources/GenerateCodeAndResX.sh: Update.
	* Members/MethodResolver.vb: Implemented better method resolution.
	* Members/RegularEventDeclaration.vb,
	  Members/MemberImplementsClause.vb: Implement event interface
	  implementations.
	* Members/Attribute.vb: Implement module attributes.
	* Members/FunctionSignature.vb: Handle cases where the function name
	  has a type character.
	* Members/Modifiers.vb: Create fewer temporary arrays and lists.
	* Members/InterfaceMemberSpecifier.vb: Resolve event interface
	  implementation.
	* Members/EventDeclaration.vb: Implement overriding of implemented
	  events.
	* Parser/Parser.vb: Create fewer temporary lists.
	* Parser/Parser(Expressions).vb: Hopefully correctly parse unary
	  expressions.
	* Emit/Emitter.vb: Make a few more methods debug only, add some debug
	  info and update calls to Helper.GetTypeCode.
	* Descriptors/GenericTypeDescriptor.vb: Update FullName to correctly
	  handle names of nested types.
	* Descriptors/MethodDescriptor.vb: MustOverride methods can't be final,
	  and implemented events get their corresponding flags as well.
	* Descriptors/TypeDescriptor.vb: IsSubclassOf: everything is a subclass
	  of Object, so special case this. Get*: create fewer lists, and use
	  indexers instead of enumerators.
	* Tokens/Token.vb: Add a few overloads to avoid array creations.
	* Tokens/Span.vb: Make columns shorter and remove EndLine, all errors
	  refer to the same line anyway.
	* Types/TypeNameResolutionInfo.vb: Change resolution to use less
	  temporary lists, arrays and strings.
	* Code/CodeBlock.vb: Implement a few missing Opcodes.Ret cases.
	* Resources/Source.xml, Resources/Errors.resx: Added a few error
	  messages.
	* TypeDeclarations/TypeDeclaration.vb: Short-circuit resolution and
	  create less temporary lists.
	* General/Report.vb: Make ShowMessage a function that returns false if
	  the message is an error and true if it's a warning.
	* General/Helper.vb: Add a Compiler parameter to GetTypeCode, IsEnum.
	  Add CompareNameStart that doesn't allocate any strings. Use
	  indexers instead of enumerators in a few places. API updates.
	  Implement a few missing bits in a variety of methods. Move method
	  resolution to MemberResolver.vb.
	* General/Namespaces.vb: Add IsNamespaceExact and FindNamespace that
	  doesn't create temporary strings.
	* General/Scanner.vb: Number parsing now uses US culture. Accept
	  integer literals greater than Int32.MaxValue (into longs).
	  Correctly implement hex and octal negative values (Extract*
	  methods).
	* General/Namespace.vb: Add Equals that doesn't create any temporary
	  strings.
	* General/TypeCache.vb: Add a few runtime specific types to avoid
	  calling FullName on types (instead do object comparison).
	* General/Index.vb: Use a case-insensitive string comparer, and remove
	  the calls to ToLower.
	* General/TypeConverter.vb: Fix a few result types.
	* General/Compiler.vb: Add VerifyConsistency that crashes if the
	  consistency check fails. API updates.
	* General/TypeManager.vb: Create a cache of types with their names and
	  fullnames, used to check if a specific type has a specific name.
	  Seems to create fewer strings.
	* General/MethodBaseDeclaration.vb: Resolve event overrides. Currently
	  disabled.
	* General/MemberCache.vb: Added LookupFlattenedMembers that doesn't
	  create any temporary lists. Remove use of enumerators.
	* General/MyGenerator.vb: Don't emit any My things if -novbruntimeref
	  is specified. If adding My.Forms, add a reference to SWF.
	* General/Messages.vb: Add a few error messages.
	* Infos/ResolveInfo.vb: Create a default resolveinfo.

2007-04-27  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/TypeManager.vb: Not finding an assembly is a warning, so
	  don't fail.

2007-04-27  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/TypeManager.vb: Not finding an assembly is a warning, so
	  don't fail.

2007-04-23  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/BinaryExpressions/BinaryExpression.vb: Don't use
	  left/rightOperandType to determine intrinsicness, but the true
	  typecode.
	* Statements/IfStatement.vb, Statements/CatchStatement.vb: Use
	  CBoolExpression to emit boolean conversion.
	* Statements/OnErrorStatement.vb, Members/BoundList.vb: Implement
	  ResolveTypeReferences.
	* vbnc.vbproj: Update.
	* Members/VariableDeclaration.vb: It's Strict On that requires variable
	  type, not Explicit On.
	* Descriptors/TypeDescriptor.vb: Implement IsSubclassOf.

2007-04-23  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Helper.vb: No workaround is necessary for the s390 anymore,
	  remove it.
	* General/MyGenerator.vb: Don't add a Main in MyApplication if a main
	  class is specified using a commandline option. Fixes #74955.

2007-04-18  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Resources/Source.xml, Resources/Errors.resx,
	  TypeDeclarations/PartialTypeDeclaration.vb, General/Message.vb,
	  General/Messages.vb: Add an error message.
	* General/TypeCache.vb: Small fixes.

2007-04-16  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/ArgumentList.vb, Expressions/AddressOfExpression.vb,
	  Expressions/InvocationOrIndexExpression.vb: Provide a small
	  work-around to let AddressOf expression work as a parameter to a
	  method call when there's only one method it can be resolved to.
	* Expressions/SimpleNameExpression.vb: Fix typo.
	* Expressions/BinaryExpressions/LShiftExpression.vb,
	  Expressions/BinaryExpressions/RShiftExpression.vb: Implement proper
	  shifting according to the spec.
	* Expressions/BinaryExpressions/GEExpression.vb,
	  Expressions/BinaryExpressions/LEExpression.vb,
	  Expressions/BinaryExpressions/GTExpression.vb,
	  Expressions/BinaryExpressions/LTExpression.vb: Don't emit boolean
	  conversions like the spec says.
	* Expressions/Classifications/PropertyAccessClassification.vb: Allow a
	  subclass to access non-public properties of the base class. (Patch
	  by Frederik Carlier for #81375).
	* Statements/IfStatement.vb: Add a null-check.
	* Statements/EraseStatement.vb: Resolve any type references.
	* Statements/GotoStatement.vb: A Goto might need into a leave
	  instruction, so call the correct Emitter method.
	* Members/PropertyDeclaration.vb: Add an Init overload.
	* Members/MethodResolver.vb: A starter class that will implement method
	  resolution in the future.
	* Members/Attribute.vb: Resolve() can be called on an attribute several
	  times, so guard against this.
	* Members/FunctionSignature.vb: Return type requiredness is decided by
	  option strict, not option explicit.
	* Members/Attributes.vb: Add a FindAttributes method.
	* Members/MethodDeclaration.vb: Add debug output and fix indentation.
	* Members/ConstructorDeclaration.vb,
	  Descriptors/GenericTypeDescriptor.vb, Types/TypeParameterList.vb,
	  Types/TypeParameter.vb, Code/CodeBlock.vb,
	  TypeDeclarations/AssemblyDeclaration.vb,
	  TypeDeclarations/TypeDeclaration.vb: Add debug output.
	* Members/MemberDeclarations.vb: Partial types only match if they have
	  the same namespace, so fix it.
	* Parser/Parser.vb: Show a warning if Option Strict is Off.
	* Emit/Emitter.vb: Don't set the name of locals if we aren't emitting
	  debug info. Implement switching methods according to the target
	  vbversion. Fix EmitStoreVariable for generic parameters (should
	  emit stobj and not st.ind).
	* Emit/EmitLog.vb: Add a property to get the real ILGenerator.
	* Descriptors/ByRefTypeDescriptor.vb: Implement
	  IsGenericTypeDefinition.
	* Tokens/IntegralLiteralToken.vb: Reimplement IIntegralLiteralToken,
	  this fixes a few parser errors.
	* Types/TypeName.vb: Add a convenience constructor and Init method.
	* TypeDeclarations/ClassDeclaration.vb: Add debug output and implement
	  handling of MyGroupCollectionAttribute.
	* General/CodeFile.vb: It's now possible to create a code file with
	  in-memory code. Used by the My generator to avoid creating a file.
	* General/Helper.vb: Add debug output. Changed emission of methods so
	  that if constrained is not required if the instance expression is a
	  DeRefExpression (ByRef parameter). Change handling of command line
	  arguments to handle the special string handling for defines (the
	  backslashes in _MYTYPE=\"Empty\").
	* General/TypeCache.vb: Add GetType, GetProperty, GetConstructor,
	  GetMethod and GetField that will return nothing if the item to look
	  on is nothing. Necessary since not everything will be loaded always
	  (depends on which assemblies are referenced). Also change the code
	  to use these methods.
	* General/Compiler.vb: Remove IDisposable implementation, it's not
	  needed. Add debug output.
	* General/CommandLine.vb: Add a command line argument -vbversion to set
	  which version of the vb language the compiler should target.
	* General/Define.vb: Add properties to get the define as Boolean,
	  String, Date and Double, and add a Parse () method that parses the
	  defined value.
	* General/MyGenerator.vb: Added, contains the code generation logic for
	  the My namespace.

2007-03-17  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.vbproj: Update.
	* Members/Attribute.vb: Implement emission of field and property values
	  for attributes.
	* Members/Parameter.vb: Small refactoring (variable renamed), and call
	  GenerateCode on the attributes, if any.
	* Members/MethodDeclaration.vb: Parameters has code that has to be
	  emitted (attributes), so call GenerateCode on the them.
	* Descriptors/ParameterDescriptor.vb: Small refactoring (variable
	  renamed).
	* Code/CodeBlock.vb: Remove unused code.
	* General/Compiler.vb: Don't emit debug info if requested not to.
	* General/CommandLine.vb: Remove m_bDebugOn and only use m_eDebugInfo.
	  Default debug is none (fixes #81054).

2007-03-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 
	
	* Statements/CallStatement.vb: If a call statement's target is a method group, resolve it like an invocation expression.
	Fixes #81059.

2007-03-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Emit/EmitLog.vb: Add an overload so that no conversions occur.

2007-03-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/BinaryExpressions/BinaryExpression.vb: When doing operator overloading remove duplicate methods.
	* Expressions/TypeOfExpression.vb: Check classification for this expression.

2007-03-15  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Emit/Emitter.vb: Remove an unnecessary workaround, fixes an endianness issue.

2007-03-09  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Scanner.vb: Allow for whitespace between the line
	  continuation character and the end of the line. Fixes #81055.

2007-03-08  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/TypeManager.vb: Use our own comparer in the membercache, this
	  avoids the runtime calling into Type.Equals ->
	  Type.UnderlyingSystemType, which causes *Descriptors to be created
	  in some cases (crashes if done before started to emit). Fixes
	  build. Also started slowly working on using Cecil.

2007-03-06  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/Resources.vb: Remove SecondaryPath, it's just wrong.
	* General/CommandLine.vb: Remove SecondaryPath, it's just wrong. Add a
	  small hack for what it was supposed to support in the beginning -
	  the fact that when doing testing within VS, the current directory
	  is set to where the compiler is, not where the test is. Fixes
	  #80967.

2007-03-05  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* vbnc.vbproj: Updated.
	* TypeDeclarations/AssemblyDeclaration.vb: Added FindType, looks for
	  the type with the specified FullName in the assembly.
	* TypeDeclarations/TypeDeclaration.vb: Changed
	  DefaultInstanceConstructor so that the Compiler can access it (when
	  emitting a default Main method). Removed SetMainAttribute, no
	  longer necessary.
	* General/TypeResolution.vb: Removed a couple of unused functions.
	* General/TypeCache.vb: Added SWF.Form, SWF.Application and
	  SWF.Application.Run.
	* General/Compiler.vb: The main function is now set before creating
	  types, this enables us to emit a default Main method for winexe
	  applications. Refactored SetMain () and to create the STAThread
	  attribute here, we now have FindMainClass that looks for the main
	  class set by -main command line argument (if any) and
	  FindMainMethod. Implemented generation of a default Main method for
	  winexe applications. Fixes #81016. Removed error messages in
	  inaccessible code-paths.
	* Types/ContainerType.vb: Deleted, obsolete.

2007-03-05  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Statements/ExitStatement.vb: Handle the select case correctly. Fixes
	  81009#.
	* Types/TypeNameResolutionInfo.vb: Allow for invalid imports.

2007-03-02  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Members/PropertyDeclaration.vb: SetDefaultAttribute is now called
	  after the members are resolved (so that we can check for other
	  members and give correct error messages).
	* Members/Attribute.vb: Added function to get the argument of an
	  attribute.
	* Resources/Source.xml, General/Messages.vb: Added more messages.
	* Resources/Errors.resx: Updated.
	* TypeDeclarations/ClassDeclaration.vb: Break out if any errors.
	* TypeDeclarations/TypeDeclaration.vb: SetDefaultAttribute now checks
	  if the attribute is specified manually and gives the correct error
	  messages.
	* General/Compiler.vb: Break out of compilation if there are any
	  errors.

2007-03-02  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/SimpleNameExpression.vb,
	  Types/ImportsClauses.vb: Skip bad imports (not a fatal
	  error).
	* Statements/ExitStatement.vb: Implemented error checking and
	  the exit statement is now producing correct error messages.
	* Members/EnumMemberDeclaration.vb: Implement a workaround for a
	  mixed Mono/MS bug (the code required to work around an MS bug
	  requires a workaround to work on Mono :)
	* vbnc.rsp, vbnc.vbnc.rsp: Updated to import
	  Microsoft.VisualBasic and reference SWF.dll as well.
	* Resources/Source.xml, Resources/Errors.resx,
	  General/Messages.vb: Added more messages.
	* TypeDeclarations/EnumDeclaration.vb: Only use EnumBuilder on
	  MS.
	* General/TypeResolution.vb: More debug checking.

2007-03-02  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Resources/Source.xml:
	* Resources/Errors.resx:
	* General/Messages.vb: Added message for #30456.

2007-03-02  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/SimpleNameExpression.vb: Small NRE check.
	* Expressions/BinaryExpressions/EqualsExpression.vb: More debug info.
	* vbnc.vbproj, Resources/Errors.resx: Updated.
	* ConditionalCompilation/ConditionalExpression.vb: Removed special
	  casing for previously unimplemented features in the vbruntime.
	* Types/TypeNameResolutionInfo.vb: Propagate IsImportsResolution
	  properly.
	* Types/ImportsNamespaceClause.vb: Show correct warning message if the
	  import isn't found, and return true (since it's a warning, not an
	  error).
	* Resources/Source.xml, General/Messages.vb: Added warning #40056.
	* Resources/GenerateCodeAndResX.sh: Fixed to actually work on Linux.
	* TypeDeclarations/AssemblyDeclaration.vb: If a keyfile is specified on
	  the commandline, it overrides any keyfile in the source. Implement
	  AssemblyVersion for generic versions of the type 1.0.* and 1.0.0.*.
	* General/Scanner.vb: NRE check, fixes #80989.
	* General/AssemblyInfo.vb: Version bump.
	* General/Compiler.vb: Creating the assembly builder can now fail.
	* General/TypeManager.vb: Ifdef out debug information.

2007-02-22  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MethodGroupToValueExpression.vb: Add more extended debug
	  information.
	* Expressions/Classifications/MethodGroupClassification.vb: Remove
	  debug information.
	* Emit/Emitter.vb: Correct indenting.
	* General/CodeFile.vb: Now encoding defaults to the one specified on
	  the command line (if none, default is based on current locale), but
	  BOMs are detected anyways.
	* General/Helper.vb: Debugging info.
	* General/AssemblyInfo.vb: Version bump.

2007-02-20  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/SimpleNameExpression.vb: Implement resolution of members
	  imported automatically from modules.
	* Statements/UsingStatement.vb: Implement emission of code for using
	  statements with expressions.
	* Descriptors/GenericParameterDescriptor.vb: Implement DefaultValue.
	* General/Helper.vb: Add more info.

2007-02-20  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* General/AssemblyInfo.vb: Version bump.

2007-02-20  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/MethodGroupToValueExpression.vb: Better crash message.
	* Statements/RedimClause.vb: Do some verification.
	* Members/ArraySizeInitializationModifier.vb: Resolve some type
	  references.
	* Members/ArrayElementInitializer.vb: Implement support for
	  initializing multi-dimensional arrays.
	* Tokens/Span.vb: Report relative filename in ToString().
	* General/CodeFile.vb: Add RelativePath, it's the path of the source
	  file that was given to the compiler. Used to show error messages
	  with the same filename as the compiler was given.
	* General/Helper.vb: EmitLoadArrayElement now uses the Get method on
	  the array type instead of the slower Get method on Array.
	* General/CommandLine.vb: Update signature of AddFilesInDir to support
	  CodeFile.RelativePath.
	* General/BaseObject.vb: Create ParentLocationTree, will show the
	  location of all the parents recursively.
	* Emit/Emitter.vb: Ifed out some consistency checking.

2007-02-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/AddressOfExpression.vb, Expressions/GetRefExpression.vb,
	  General/Helper.vb: Make the crashes give more information.
	* Expressions/SimpleNameExpression.vb: Properties in implicit modules
	  can now be accessed correctly.
	* Expressions/Expression.vb: If getting the object reference of a
	  deref'ed value type, return the original deref'ed value type (which
	  should be a byref type, so this is ok).
	* Expressions/DeRefExpression.vb: Make the base expression publicly
	  available.
	* Expressions/DelegateOrObjectCreationExpression.vb: Only resolve the
	  argument list as a delegete argument list if it actually is a
	  delegate creation.
	* Members/PropertyDeclaration.vb: Add a call to MyBase.GenerateCode, so
	  that attributes are emitted correctly.
	* Members/ArrayElementInitializer.vb: Another check for 0 elements to
	  emit.
	* General/CommandLine.vb: Ignore any exceptions when trying to write
	  vbnc.rsp (might happen if the user doesn't have write permissions
	  to the directory where vbnc.exe resides).

2007-02-13  Rolf Bjarne Kvinge <RKvinge@novell.com> 

	* Expressions/ArgumentList.vb, Members/MethodDeclaration.vb,
	  Code/CodeBlock.vb, TypeDeclarations/AssemblyDeclaration.vb:
	  Commented out a wrong assert.
	* Expressions/Conversions/CSByteExpression.vb,
	  Expressions/Conversions/CSngExpression.vb,
	  Expressions/Conversions/CIntExpression.vb,
	  Expressions/Conversions/CBoolExpression.vb,
	  Expressions/Conversions/CShortExpression.vb,
	  Expressions/Conversions/CDblExpression.vb,
	  Expressions/Conversions/CByteExpression.vb,
	  Expressions/Conversions/CULngExpression.vb,
	  Expressions/Conversions/CStrExpression.vb,
	  Expressions/Conversions/CObjExpression.vb,
	  Expressions/Conversions/CCharExpression.vb,
	  Expressions/Conversions/CDateExpression.vb,
	  Expressions/Conversions/CUIntExpression.vb,
	  Expressions/Conversions/CLngExpression.vb,
	  Expressions/Conversions/CTypeExpression.vb,
	  Expressions/Conversions/CUShortExpression.vb: Validate conversion
	  during the resolution phase.
	* Expressions/Conversions/CDecExpression.vb: Validate conversion during
	  the resolution phase. Add special handling for loading decimal
	  constants in a way that looks like a MS bug.
	* Expressions/SimpleNameExpression.vb: In GetMeClassification check if
	  the parent is a TypeDeclaration for fields. Fixes #80752.
	* Expressions/BinaryExpressions/EqualsExpression.vb,
	  ConditionalCompilation/ConditionalCompilation.vb: Add more debug
	  info.
	* Expressions/InvocationOrIndexExpression.vb,
	  Members/FunctionSignature.vb, Members/Parameter.vb,
	  Members/VariableDeclaration.vb, Names/QualifiedIdentifier.vb,
	  Types/TypeName.vb, General/MethodBaseDeclaration.vb: Shortcircuit
	  resolution if something fails.
	* Statements/RaiseEventStatement.vb: Override ResolveTypeReferences.
	* vbnc.vbproj: Updated.
	* Emit/Emitter.vb: Small fix to the emission stack.
	* ConditionalCompilation/ConditionalExpression.vb: Simplify code a bit
	  using the vbruntime for a few cases. Add a couple of special cases
	  since our vbruntime doesn't have support yet for the necessary
	  functions required to boot the compiler.
	* Types/TypeNameResolutionInfo.vb: Shortcircuit resolution if something
	  fails. Now shows VBNC30451 correctly.
	* Resources/GenerateCodeAndResX.bat, Resources/GenerateCodeAndResX.sh:
	  A script to generate Messages.vb and Errors.resx from Source.xml
	* Resources/Errors.resx: Add an error message for error # 30451.
	* General/CodeFile.vb: Don't try to parse the file as UTF8 by default
	  (fixes #80750). This has to be done some other way though.
	* General/Report.vb: Remove unused method.
	* General/Helper.vb: Add a function to enable debug output with
	  environment variables.
	* General/AssemblyInfo.vb: Update version.
	* General/TypeResolution.vb: Implement for cases for type conversions.
	* General/TypeConverter.vb: Add a method to get the error # (if any)
	  for a specified conversion
	* General/Compiler.vb: Fix testoutput path.
	* General/CommandLine.vb: More debug information.
	* General/Messages.vb: Add message for error #30451.

2007-02-01  Rolf Bjarne Kvinge  <RKvinge@novell.com>

	* Scanner.vb: The scanner now scans reads characters in files one by one instead of loading the entire source file into memory at once.
	* GenericTypeDescriptor.vb: Use StringBuilder instead of concatenation to use less strings.
	* ArrayTypeDescriptor.vb: Cache FullName to avoid calculating it several times.
	* Conditional*.vb: Implement support for ConditionalAttribute. A copy of all the constants are now created every time a constant changes (so that we know what the constant was later on when we handle ConditionalAttributes). Fixed bug when conditional constants are in an excluded code-region.
	* TypeNameResolutionInfo.vb: Create less strings and temporary objects.
	* CodeFile.vb: Implement support for ConditionalAttribute.
	* Helper.vb: A few more special cases for IsEnum to avoid getting the FullName of the type. Add the ConditionalAttribute to all the Assert* calls.
	* TypeCache.vb: Only load methods from a class if the class was successfully loaded (quite a few methods are still missing this check).
	