2004-11-06 Jambunathan K * attribute.cs: Removed the redundant AttributeSection class and moved it's functionality to Attributes class. * class.cs: * mb-parser.jay: * module.cs: Replaced references to AttributeSection with the equivalent constructs. * rootcontext.cs: Removed the following unused methods AddGlobalAttribute and AddGlobalAttributeSection. 2004-11-03 Anirban Bhattacharjee * mb-parser.jay: Trivial fix for bug #68985 2004-11-04 Jambunathan K * mb-parser.jay: Syntactic error handling for attribute grammar. 2004-10-25 Anirban Bhattacharjee * statement.cs: VB .Net specific exception number 2004-10-25 Anirban Bhattacharjee * mb-parser.jay: Enhanced catch grammar to accept 'When' clause * statement.cs: Changed Catch and Try classes accordingly to emit catch statement conditionally 2004/10/22 Rafael Teixeira * driver.cs : accept also -t:library as vbc does, besides /target:library 2004-10-21 Anirban Bhattacharjee * statement.cs: Introduced few specific execptions Changed exception number 2004-10-21 Anirban Bhattacharjee * statement.cs: A trivial fix to get Exit Try working 2004-10-21 Jambunathan K * typemanager.cs (LookupType, LookupTypeDirect): Added a negative cache for failed type lookups (stolen from mcs' typemanager.cs). mbas gets a performance boost of about 20 times due to this change. * driver.cs (MainDriver): Made the warning message a little less scary and more inviting for first time users. 2004-10-19 Anirban Bhattacharjee * mb-parser.jay: Enhanced For Each...Next statement grammar 2004-10-15 Anirban Bhattacharjee * mb-parser.jay: Little improvement in For...next statement 2004-10-14 Anirban Bhattacharjee * mb-parser.jay: For statement is enabled to take optional declaration of the counter variable. E.g. now for statement can be declared as For i as integer = 0 to 5 End For 2004/10/08 Rafael Teixeira * Makefile: added target 'profile', changed some sources in testmbas/ to use for that purpose. 2004-10-11 Anirban Bhattacharjee * mb-parser.jay: More improvement in 'IF' statement 2004-10-11 Anirban Bhattacharjee * mb-parser.jay: If statement is enabled to parse following type of statement If Then else 2004/10/08 Rafael Teixeira * typemanager.cs: Changing StandardModule to use less memory, by doing string concatenation only once. It was wasting 1 MB on the test case. 2004-10-06 Anirban Bhattacharjee * mb-parser.jay: Added support for Call keyword in invocation statement 2004-10-01 Anirban Bhattacharjee * ecore.cs: Bug fixing - when event raised from other assembly 2004-09-30 Anirban Bhattacharjee * mb-parser.jay: * statement.cs: Removed unused event_target field from AddHandler and RemoveHandler 2004-09-30 Anirban Bhattacharjee * mb-parser.jay: RemoveHandler function made cleaner 2004-09-30 Anirban Bhattacharjee * expression.cs: * ecore.cs: Fix for resolution of event expression when we have a AddHandler statement like AddHandler Me.E, AddressOf Me.EH Submitted by Raja Harinath 2004-09-30 Anirban Bhattacharjee * mb-parser.jay: Unnecessary to and fro conversion of types is removed from AddHandler function 2004-09-23 Anirban Bhattacharjee * expression.cs: Enhanced mbas to resolve Default property or indexer 2004-09-21 Anirban Bhattacharjee * mb-parser.jay: Fixed bug #66231 - Now, Me.SubName, MyBase.SubName or any other qualified name is supported by AddressOf operator 2004-09-15 Anirban Bhattacharjee * enum.cs: Made Enum member lookup case insensitive 2004-09-15 Anirban Bhattacharjee * support.cs: Retrieving default value from another assembly in ReflectionParameters class 2004-09-15 Anirban Bhattacharjee * class.cs: Support for enum in default constant value for optional parameters 2004-09-14 Anirban Bhattacharjee * mb-parser.jay: Fixed exception number for type confliction in method parameter 2004-09-14 Anirban Bhattacharjee * class.cs: Set default constant value for optional parameters in ParameterBuilder * parameter.cs: Setting optional attribute These two fixes makes sure that optional parameter with default value get emitted correctly 2004-08-27 Anirban Bhattacharjee 2004-09-08 Bernie Solomon * mb-parser.jay: fix CopyTo args when parsing parameters 2004-09-08 Bernie Solomon * expression.cs: cope with ParamArray for no args * mb-parser.jay: dump parsing exception with --stacktrace 2004/08/19 Rafael Teixeira * mb-parser.jay : some changes just not to stumble in global attributes definitions in multiple-lines like we have in VS.NET generated AssemblyInfo.vb files. still need to really process that definitions like mcs does 2004-09-07 Bernie Solomon * mb-parser.jay: * mb-tokenizer.cs: first cut at implementing op assign 2004-09-07 Bernie Solomon * ecore.cs: * enum.cs: * expression.cs: * mb-parser.jay: * support.cs: work on improving overload resolution 2004-08-30 Bernie Solomon * class.cs (FindMembers): filter on modflags for constructors & constructors are never inherited * decl.cs (SetupCache): constructors are not inherited 2004-08-27 Anirban Bhattacharjee * driver.cs: bug fixing - #63580 2004/08/19 Rafael Teixeira * testmbas/WriteOk.vb : Use Mono.GetOptions from VB.NET * Makefile : exercise new option processing in test program [make-run-local target] 2004-08-26 Bernie Solomon * mb-parser.jay: rework parsing of ParamArray parameters 2004-08-23 Bernie Solomon * mb-parser.jay: cope with more varieties of array declarations 2004-08-20 Anirban Bhattacharjee * statement.cs: Bug fixing - Prevent AddHandler from getting resolved second time. This is critical for ASP programs with VB. 2004-08-20 Anirban Bhattacharjee * expression.cs: Bug fixing - reference to the current type is fixed during BaseAccess resolution 2004/08/19 Rafael Teixeira * driver.cs : Some cleanup, also renamed checked option as it was removeintchecks in disguise 2004-08-18 Anirban Bhattacharjee * mb-parser.jay: MyBase support in Handles clause e.g. Sub EH() Handles MyBase.E 2004-08-13 Anirban Bhattacharjee * mb-parser.jay: Trivial fix (#63213) 2004-08-13 Anirban Bhattacharjee * class.cs: * typemanager.cs: -Bug fixed to resolve the ReadOnly properties from base class -Fixed bug in resolving properties from different assembly 2004-08-14 Bernie Solomon * mb-parser.jay: fix block used as body of For Each 2004-08-13 Anirban Bhattacharjee * expression.cs: Bug fixing for compiling VB script generated by ASP page - AddressOf operator in a method argument will resolve methods outside assembly 2004-08-13 Anirban Bhattacharjee * class.cs: bug fixing to get PropertyE.vb test running - search of overridable property in base class was failing 2004-08-13 Anirban Bhattacharjee * typemanager.cs: Little correction in my last checked-in code - removed unnecessary return value from ExpandAllInterfaces function 2004-08-13 Anirban Bhattacharjee * class.cs: Trivial bug fixing to get test InterfaceB.vb going 2004-08-13 Rob Tillie * ecore.cs: added runtime conversion from string to DateTime (fixes test 13329). 2004-08-13 Anirban Bhattacharjee * class.cs: * typemanager.cs: * pending.cs: Multiple interface inheritance implemented - fix for getting InheritanceD.vb working in bteasts 2004-08-12 Anirban Bhattacharjee * mb-parser.jay: Implements support in Abstract methods 2004-08-12 Anirban Bhattacharjee * class.cs: Support for abstract method resolution * pending.cs: Type of pending_implementations is set to base type Changed method names IsInterfaceIndexer and IsInterfaceMethod to IsAbstractIndexer and IsAbstractMethod respectively to make them more meaningful 2004-08-11 Bernie Solomon * mb-parser.jay: first cut at TypeOf ... Is 2004-08-11 Bernie Solomon * expression.cs: * ecore.cs: More enum changes to handle implicit conversions better 2004-08-11 Anirban Bhattacharjee * mb-parser.jay: Interface inheritance made better 2004-08-09 Jambunathan K * mb-parser.jay: Sanitized parser's generic error message 2004-08-07 Anirban Bhattacharjee * enum.cs: Enum members became enum type now, instead of underlying type 2004-08-07 Bernie Solomon * mb-parser.jay: Implement GetType(x) implement Is as equals for the moment so it can be used 2004-08-07 Anirban Bhattacharjee * mb-parser.jay: Check for empty enum declaration 2004-08-07 Anirban Bhattacharjee * class.cs: * mb-parser.jay: Multiple Implements for a particular type member got implemented 2004-08-06 Bernie Solomon * support.cs: Make ReflectionParameter behave like InternalParameter for byref args. * expression.cs: Cope with byref args in an imported DLL 2004-08-06 Jambunathan K * mb-parser.jay: Changed expression grammar so that it now has a better semblance to those defined in section 11 of VB.NET spec. The 'expression' rule as it is now could possibly be buggy. So another iteration is a must. 2004-08-06 Anirban Bhattacharjee * mb-parser.jay: Small bug fix in Event grammar 2004-08-06 Anirban Bhattacharjee * class.cs: Event still needed to have a constructor which takes value of Implements clause. * mb-parser.jay: Passing Implements clause value to the constructor 2004-08-06 Anirban Bhattacharjee * decl.cs: * rootcontext.cs: Exception number made aligned to VB .net 2004-08-06 Anirban Bhattacharjee * class.cs: Improvements in the implementation of Implements clause in Type members 2004-08-05 Anirban Bhattacharjee * mb-parser,jay: Implements clause added to Event grammar 2004-08-05 Anirban Bhattacharjee * mb-parser.jay: Interface event declaration grammar rewritten 2004-08-04 Anirban Bhattacharjee * class.cs: Introduced check for valid interface name in Implements clause. 2004-08-04 Jambunathan K * mb-tokenizer.cs: * mb-parser.jay: 1) Fixed the Attributes grammar starting with opt_attributes. Introduced new rules starting with opt_global_attributes rule - section 5.2 of VB.NET spec 2) Introduced new Tokens that correspond to reserved but unused VB.NET keywords. Added some comments as appropriate in the keywords hashtable of tokenizer - section 2.3 of VB.NET spec. 3) Corrected 'imports_term' - section 6.3.1 & 6.3.2 of VB.NET spec. 4) Introduced opt_argument_list - section 5.2 of VB.NET spec 5) Corrected namespace_declaration - section 6.4.1 of VB.NET spec 2004-08-04 Anirban Bhattacharjee * mb-parser.jay: Added support for modifiers and attributes in interface member grammar 2004-08-04 Anirban Bhattacharjee * mb-parser.jay: Property types made optional 2004-08-03 Anirban Bhattacharjee * mb-parser.jay: Interface method and property grammar got changed Support for multiple implements in class * interface.cs: Interface class has got changed All other interface types have been removed * class.cs: Property's Define and CheckBase method changed significantly to be in sync with Interface * pending.cs: few related changes * attribute.cs: few related changes 2004/08/01 Rafael Teixeira * mb-parser.jay : Some correction as pointed by Jambunathan, to allow preprocessor directives after a label that may leave it orphaned (without a explicit statement) * testmbas/WriteOK.vb : some vb code to test this case 2004/08/01 Rafael Teixeira * mb-parser.jay : Some correction as pointed by Jambunathan, to allow intermixing preprocessor directives between the label and it's associated statement 2004-08-02 Jambunathan K * mb-tokenizer.cs: Oops. Also pulled out all of the old pre-processor code that is no more used. 2004-08-02 Jambunathan K * mb-tokenizer.cs: Fixed a bug where line nos were failing to get incremented when the line continuation character was appearing by itself on contiguous lines. * mb-parser.jay: Fixed the #ExternalSource actions so that ExternalSourceDirectivesC4.vb compiles and reports source & line nos as expected. * location.cs: Replaced the existing unintuitive, not so efficient implementation of struct Location {} with the one available in mcs with one minor difference: The number of bits reserved for a file index in the Token is statically fixed at 8 bits. 2004/08/01 Rafael Teixeira * mb-parser.jay : Revised patch from João Viegas for the labeled_statement accepting integer literals as labels 2004-07-30 Jambunathan K * mb-parser.jay: Oops. Reversed unintended checkin. * mb-tokenizer.cs: Added comment in Tokenizer() * mb-parser.jay: Fixed miscellaneous bugs in handling of pre-processor directives. There are two positive test cases that fail currently: ExternalSourceDirectivesC4.vb and RegionDirectivesC1.vb 2004-07-30 Raja R Harinath * mb-parser.jay (IfElseStateMachine.State, IfElseStateMachine.Token): Remove [Flags] attribute. 2004-07-30 Jambunathan K * mb-parser.jay: * mb-tokenizer.cs: Added support for #region, #externalsource and conditional compilation pre-processor directives. Conditonal directives currently accept only boolean literals as conditonal expressions. * mb-parser.jay: The original checkin hits a bug in mcs but compiles fine with csc. This checkin is to workaround the mcs bug so that cvs builds are not broken. 2004/07/26 Rafael Teixeira * mb-parser.jay : First try at SyncLock Statement #53230 2004-07-22 Anirban Bhattacharjee * argument.cs: * expression.cs: Little betterment in resolution of parameter with Addressof operator in method argument 2004-07-20 Anirban Bhattacharjee * expression.cs: Resolution of fully qualified type names - bug fixed 2004-07-20 Anirban Bhattacharjee * assign.cs: Added new argument to Expression.ConvertExplicit function call 2004-07-20 Anirban Bhattacharjee * expression.cs: Fixed resolution of overloaded functions with delegate as parameter * ecore.cs: Changes made to stop program getting into an endless loop on not able to cast types of source to destination object. * statement.cs: Added new argument to Expression.ConvertExplicit function call 2004-07-18 Anirban Bhattacharjee * argument.cs: Introduced AddressOf argument type for tracking AddressOf operator in method parameter * expression.cs: A parameter with AddressOf operator will get converted to Delegate before overload resolution * mb-parser.jay: Omitted two delegate creation expression grammar. This is now taken care by normal object creation expressions since Argument is capable of handling AddressOf operator now This is a fix for bug #59555 2004/07/15 Rafael Teixeira * driver.cs : Implemented support for -pkg to match mcs (bug #58673) 2004/07/15 Rafael Teixeira * driver.cs : started implementing -pkg support to match mcs (bug #58673), also corrected multiplicity for addmodule option 2004-07-13 Anirban Bhattacharjee * driver.cs: Added support for AddModule compiler option * typemanager.cs: AddModule function will now store list of Modules instaed of ModuleBuilders. This change has been made to get LoadModule function working of driver.cs. 2004-07-13 Anirban Bhattacharjee * driver.cs: Compilation to module is supported now 2004-07-09 Anirban Bhattacharjee * mb-parser.jay: * class.cs: Default modifier for constructor is set to Public 2004-07-09 Anirban Bhattacharjee * mb-parser.jay: Parentheses in method declarations made optional incase of empty parameter list. Thus, a method "Sub s()" can also be declared as "Sub s" 2004-07-07 Anirban Bhattacharjee * expression.cs: bug fixed - 60399 2004-06-13 Anirban Bhattacharjee * mb-parser.jay: Small correction in delegate declaration grammar 2004-06-13 Anirban Bhattacharjee * mb-parser.jay: modified RemoveHandler function * statement.cs: Added RemoveHandler statement class 2004-06-13 Anirban Bhattacharjee * mb-parser.jay: Modified grammar for several syntax of AddressOf operator 2004/06/10 Rafael Teixeira * typemanager.cs : GetPertinentStandardModules receives the array now with params modifier to help usage * ecore.cs : correcting lookup of semi-qualified standard modules members - A little better but not there yet 2004-06-10 Anirban Bhattacharjee * mb-parser.jay: Grammar added for RemoveHandler statement 2004-06-10 Anirban Bhattacharjee * mb-parser.jay: * expression.cs: Added support for statement like delgate_name = AddressOf sub_name 2004-06-09 Raja R Harinath * Makefile (HAS_TEST): Remove. (run-test-local): Move rule to and depend on ... (run-mbas-test): ... this. 2004-06-08 Anirban Bhattacharjee * mb-parser.jay: * statement.cs: Few exception checks for Event 2004-06-07 Anirban Bhattacharjee * mb-parser.jay: Resolved the problem in Sub statement with Handles cluse * class.cs: Added a AddEventHandler function and a EventHandler readonly property. Also modified define of constructor to accommodate Handlers clause. If one initialize a event handler as Sub Handler() Handles x.Event The handler will be initialized by the constructor of the corresponding class by calling AddHandler. 2004-06-04 Anirban Bhattacharjee * mb-parser.jay: Modified WithEvents grammar 2004-06-04 Anirban Bhattacharjee * class.cs: - NotOverridable modifier support added to Property - Few overriding related checks put on Property 2004-06-04 Anirban Bhattacharjee * decl.cs: Check for duplicate member name within same container 2004-06-04 Anirban Bhattacharjee * class.cs: changed exception number in event grammar 2004-06-03 Anirban Bhattacharjee * mb-parser.jay: RaiseEvent grammar fixed to get it working 2004-06-03 Anirban Bhattacharjee * driver.cs: fixed bug - 59540 2004-06-01 Anirban Bhattacharjee * mb-parser.jay: Improved event declaration grammar 2004/05/31 Rafael Teixeira * AssemblyInfo.cs : Anirban is and author too 2004-05-27 Anirban Bhattacharjee * delegate.cs: * expression.cs: Few exception checks for delegete 2004-05-27 Anirban Bhattacharjee * mb-parser.jay: * delegate.cs: Few more fixes in delegate grammar 2004-05-27 Anirban Bhattacharjee * mb-parser.jay: Changed Delegate instantiation grammar to get it working 2004-05-26 Anirban Bhattacharjee * mb-parser.jay: * class.cs: Few property related checks applied 2004-05-24 Anirban Bhattacharjee * class.cs: Check for ReadOnly and WriteOnly modifiers added to property 2004-05-24 Anirban Bhattacharjee * mb-paresr.jay: Support for abstruct property is added 2004-05-24 Raja R Harinath * Makefile (PROGRAM_INSTALL_DIR): Install mbas into $(prefix)/lib/mono/1.0. 2004-05-10 Anirban Bhattacharjee * mb-parser.jay: few Property related grammar changes 2004-05-14 Anirban Bhattacharjee * mb-tokenizer.cs: Bug fixed - Got Property working 2004-05-10 Anirban Bhattacharjee * mb-parser.jay: Support added for attaching Attributes in methods 2004/04/07 Rafael Teixeira * AssemblyInfo.cs : Correcting information and version number 2004-04-29 Anirban Bhattacharjee * enum.cs: bug fixing - setting one enum member to another 2004-04-29 Anirban Bhattacharjee * enum.cs: * expression.cs: Implemented check for access modifier in enum 2004-04-29 Lluis Sanchez Gual * typemanager.cs: Property.GetGetMethod() does not return the method if it is private (it did until now because of a bug). Make sure it works as it worked before the fix. 2004-04-28 Anirban Bhattacharjee * expression.cs: fixed bug to get enum running * enum.cs: handling several negative scenarios Changed several exception numbers * assign.cs: Changed exception number 2004-04-26 Jackson Harper * Makefile: Get libs from default profile directory. 2004-04-23 Anirban Bhattacharjee * mb-parser.jay: Grammar changes for array * expression.cs: exception number changed for "Incorrectly structured array initializer" exception 2004-04-17 Anirban Bhattacharjee * mb-parser.jay: * class.cs: * const.cs a little better structure grammar 2004-04-16 Anirban Bhattacharjee * mb-parser.jay: few clean-ups 2004-04-16 Anirban Bhattacharjee * class.cs: Duplicate entry point exception number changed Checked delaration of Types, fields, methods as Protected if they are member of Module type * const.cs: Checked delaration of constructor as Protected if it is member of Module type * driver.cs: exception number is changed for "Entry point does not exist" exception 2004-04-15 Anirban Bhattacharjee * mb-parser.jay: Classes can't be delared static impicitly as other module members 2004-04-15 Anirban Bhattacharjee * class.cs: Couple of bug fixes in defining default static constructor, partially imposed by the fix earlier 2004-04-14 Anirban Bhattacharjee * class.cs: Added support for Shadows modifier in Variables 2004-04-14 Anirban Bhattacharjee * const.cs: Added support for Shadows modifier in constant 2004-04-14 Anirban Bhattacharjee * expression.cs: Removed the check which was stoping type instances to access the shared variables 2004-04-14 Anirban Bhattacharjee * modifiers.cs: changed exception number for invalid modifiers exception 2004-04-13 Anirban Bhattacharjee * mb-parser.jay: Removed 'static_constructor_declaration' - this is not required as 'constructor_declaration' implementation is good enough to handle static constructors too * class.cs: Handling couple of negative scenarios related to static constructors and bug fixes 2004-04-13 Anirban Bhattacharjee * class.cs: Couple of negative scenario handling 2004-04-13 Anirban Bhattacharjee * mb-parser.jay: Few clean-up 2004-04-12 Anirban Bhattacharjee * mb-parser.jay: Bug fixed - Base class ctor was getting called twice when called explicitly from the derived class ctor as MyBase.New 2004-04-12 Anirban Bhattacharjee * mb-parser.jay: Fixed bugs for calling ctor from another ctor in the same class by using statments like Me.New or MyClass.New 2004/04/07 Rafael Teixeira * mb-tokenizer.cs : Better error message when dealing with date literals 2004-04-06 Anirban Bhattacharjee * class.cs: * ecore.cs: * expression.cs: * modifiers.cs: Changed/added serveral Accessibility related expections 2004-04-05 Anirban Bhattacharjee * class.cs: * decl.cs: * expression.cs: * pending.cs: Several error messages and numbers are changed in all the above four classes 2004-04-04 AnirbanBhattacharjee * delegate.cs: changed default access modifier * enum.cs: changed default access modifier * interface.cs: changed default access modifier * modifiers.cs: extension of bug fixed for getting NotOverridable modifier working for methods 2004-04-04 AnirbanBhattacharjee * class.cs: Changed exception messages and their numbers to align better with VB Changed default access modifier of method to Public Bug fixed to get NotOverridable modifier working * decl.cs: Changed exception messages and numbers 2004-03-25 Anirban Bhattacharjee * class.cs: bug fixing - creating default constructor when no constructor is specified Few modifiers are changed to align with Vb 2004/03/22 Rafael Teixeira * typemanager.cs : being more carefull with null arguments in some places, null checking in GetPertinentStandardModules() loop * namespace.cs : a helper ToString override * ecore.cs : Dealing with finding more than a pertinent standard module having a global member * testmbas/WriteOk.vb : Exercising correct standard module resolution NOTE: Almost there for Bug #52067 - just the semi-qualified case isn't working 2004-03-23 Anirban Bhattacharjee * mb-parser.jay: handled implicit static modifier for module members in const * const.cs: changed supported modifiers 2004-03-23 Anirban Bhattacharjee * modifiers.cs: Return name of the modifiers' changed to vb specific 2004/03/22 Rafael Teixeira * ecore.cs : now it gets the correct list of namespaces in scope (either imported or current) Almost there for Bug #52067 2004-03-22 Anirban Bhattacharjee * mb-parser.jay: One more negative scenario is addressed in const grammar 2004-03-22 Anirban Bhattacharjee * const.cs: Change type of constant to the type of its value if no explicit type declaration found 2004-03-22 Anirban Bhattacharjee * mb-parser.jay: Grammar for declaring constant inside block is changed 2004-03-22 Anirban Bhattacharjee * const.cs: Changed exception numbers 2004-03-22 Anirban Bhattacharjee * mb-parser.jay: Changed grammar for constant 2004/03/02 Rafael Teixeira * mb-tokenizer.cs : handling better linebreak, specially when delaing with literals and preprocessing directives 2004-03-16 Anirban Bhattacharjee * mb-parser.jay: - changed variable declaration grammar and added support for multiple variables declartion under single type e.g. dim x, y as integer - added few exception checks in variables - added one exception check in property 2004/03/02 Rafael Teixeira * sourcebeingcompiled.cs : new source/class to hold things previously contained in namespaces.cs because in C# they were semantically tied to nested namespaces, and in VB.NET they can occur only once per file. * mbas.exe.sources: added sourcebeingcompiled.cs * mb-parser.jay: reference RootContext.Sourcebeingcompiled things * namespace.cs: move pieces to sourcebeingcompiled * rootcontext.cs: use SourceBeingCompiled class * decl.cs: reference RootContext.Sourcebeingcompiled things 2004-03-02 Anirban Bhattacharjee * mb-tokenizer.cs: Support for '-' delimiter in DateTime 2004-03-02 Anirban Bhattacharjee * report.cs: Formatted warning thrown 2004-03-02 Anirban Bhattacharjee * class.cs * decl.cs * modifiers.cs * mb-parser.jay Added Overloads and Shadows modifiers to Function and Sub Fixed few other modifier related problems in Function and Sub 2004-01-07 Nick Drochak * genericparser.cs: * mb-tokenizer.cs: * row.cs: Eliminate warnings about unused variables. 2004/01/06 Rafael Teixeira * typemanager.cs : correcting translation of System types to language types, also temporarily circunventing a exception in ModuleBuilder.GetType inside LookupTypeReflection, corrected many ` characters to ' in error messages * testmbas/WriteOK.vb : testing newly implemented IsNumeric global function 2004-01-04 David Sheldon * expression.cs: Added matching ")" to error message for CS0077 2003/12/23 Rafael Teixeira * driver.cs : added stubs for options "/netcf /sdkpath:path" * namespace.cs, decl.cs, rootcontext.cs : use hashtable to avoid duplicate importation of namespaces (especially between command-line option /imports and explicit Import clauses), what manifested itself as error messages for ambiguous names that where in truth identical * statement.cs : trying to fix the 'exit' statement DoEmit, for "Exit Sub" * mb-parser.jay, mb-tokenizer.cs : initial support for type_characters (dim az$ = dim az as string) 2003/12/18 Rafael Teixeira * class.cs : case-sensitiveness when tracking the entry-point removed * driver.cs : IsSWFApp would try to pass a null 'mainclass' to the hashtable indexer, throwing an exception (even for correct programs because of the bug above). Now this condition is tested before 2003/12/06 Rafael Teixeira * ecore.cs : problems trying to implicit convert OMITTED arguments, solved * mb-tokenizer.cs, mb-parser.jay, typemanager.cs : support for the date primitive type and date literals * testmbas/WriteOK.vb: testing date type and date literal 2003/11/12 Rafael Teixeira * driver.cs : /imports option now is implemented * mb-parser.jay: support for pre-imported namespaces (the default Microsoft.VisualBasic and those from /imports) 2003/11/12 Rafael Teixeira * mb-tokenizer.cs : integer literal (Hex starts with &H not 0x), handle Octal literals (&O) * handle unicode specialized double-quotes in string literals * corrected some mishandling of conversions in numeric literals * implemented support for char literals ("z"c) * Makefile : verbose target uses verbose argument * testmbas/WriteOK.vb: many tests for literals implemented * literal.cs: correcting lack of a ShortLiteral class * mb-parser.jay: removed support for unsigned int literals, added support for short int literals 2003/11/10 Rafael Teixeira * *.cs, mb-parser.jay: Switched all from defining/using namespace Mono.CSharp to Mono.MonoBASIC * location.cs: SymbolDocument now returns a SymbolDocumentWriter using the right (SymLanguageType.Basic) GUID 2003/10/17 Rafael Teixeira * genericparser.cs: Don't print exception when a file is not found to be parsed File extensions not matched are now processed with the default parser Better handle file/directory not found exceptions, and use Report.Error in that case * added defaultparserattribute.cs * mb-parser.jay : Mono.MonoBASIC.Parser is now the [DefaultParser] * location.cs version 1.4 recovered (Marco Ridoni had it overwritten with an older version) * mb-tokenizer.cs, rootcontext.cs, tree.cs: Location constructor needs column number now 2003/09/17 Rafael Teixeira * .cvsignore: WHOOPS 2003/09/17 Rafael Teixeira * .cvsignore: some more files to ignore 2003/09/17 Rafael Teixeira * mb-tokenizer.cs, driver.cs: Back to Linux line-endings, SORRY 2003/09/16 Rafael Teixeira * Makefile: corrected testing in Windows/Cygwin (from mbas.exe to ./mbas.exe), because it was getting the installed compiler instead of the compiled one * mb-tokenizer.cs: Redoing: Preprocessor directives must be case-insensitive (many .ToLower() used) * driver.cs: No more 'linkpaths' option, use 'libpath' instead 2003/09/15 Rafael Teixeira * driver.cs: Corrected handling of FileNotFoundException in LoadAssembly(), according to Bernie Solomon's patch 2003/08/13 Rafael Teixeira * mb-parser.jay: ReDim statement parses many variables now (but initializers aren't allowed) Erase statement implemented Lots of garbage (never reduced rules) deleted Reduce/Reduce problems eliminated (where due to having opt_modifiers duplicated inside property_declaration rule) * statement.cs : class Redim is prepared to have ReDim Preserve copying code called, but we need to check if that code is lying in Microsoft.VisualBasic.dll New class Erase 2003-07-26 Ben Maurer * statement.cs: Make Math.XXX System.Math.XXX, to fix the build. 2003-07-20 Peter Williams * Makefile: Remove the test target which conflicted with the global target. (Change confirmed with Rafael.) 2003-04-02 Duncan Mak * mb-parser.jay: Temporarily remove the references to Class.MustOverride to fix the build. 2003/03/29 Rafael Teixeira * mb-parser.jay: corrected some module related rules * location.cs : now handles column information 2003/03/11 Rafael Teixeira * makefile.gnu : use $RUNTIME for all targets actually run the compiled program on 'test-gtk' target * mb-tokenizer.cs : no escaping of chars allowed in VB.NET (old mcs code removed) handle doubled-doublequotes (VB idiom to escape a doublequote) 2003/03/04 Rafael Teixeira * mb-parser.jay: added rule for Imports with alias * mb-parser.jay: Friend (internal) modifier was missing, Shared modifier was expecting Static token erroneously Modules must accept only a static constructor rule added Constant declaration rule added * makefile & makefile.gnu : actually run the compiled program on test target 2003/03/03 Rafael Teixeira * mb-tokenizer.cs : new semi-keywords: Compare, Explicit, Strict, On, Off, Binary, Text * mb-parser.jay: tokens for above semi-keywords, and rules for option directives * driver.cs: integrates command line options with parser flags for option directives * makefile & makefile.gnu : added 'verbose' target that uses --verbose switch to compile the test source and pipes it through 'less', also added a Extended Syntax source 2003/02/22 Rafael Teixeira * class.cs : As, per vbc, there is a rootnamespace now, --main wasn't working anymore, because it was expecting a fully qualified class name. We now also test the name passed prepended by the rootnamespace. * class.cs : Corrected warning "The keyword new is required on `Mono.CSharp.Property.Emit' because it hides inherited member `PropertyBase.Emit'", by making it virtual in PropertyBase and override in Property. * makefile.gnu : test and test-gtk targets now depend on mbas.exe 2003/02/19 Rafael Teixeira * mb-parser.jay : eliminated reduce/reduce conflict on duplicated rank_specifier rule by renaming the one using brackets to bracketed_rank_specifier 2003/02/12 Rafael Teixeira * added argument.cs (extracted from expression.cs) makefiles corrected * mb-parser.jay : eliminated reduce/reduce conflict on opt_argument_list rule, by putting and if to make a argument list with just an empty argument list become an empty list 2003/02/03 Rafael Teixeira * rootcontext.cs : added RootNamespace member * mb-parser.jay : use RootContext.RootNamespace to initialize outermost namespace * driver.cs : - implement rootnamespace parameter, and defaults it to the output file name - like vbc if no source file name is provided just show help 2003/01/22 Nick Drochak * makefile: Use csc compiler in here. makefile.gnu assumes mono/mcs 2003-01-13 Rafael Teixeira * added cleanup method to tokenizer as needed but modifications made in jay 2003-01-12 Rafael Teixeira * changed test target in makefile work * corrected authors list to include Marco 2002-10-23 Rafael Teixeira * merged many sources from mcs/mcs, to resync 2002-10-20 Rafael Teixeira * using Mono.GetOptions preliminar support for response files, changed the makefile target 'test' for use o response file testmbas/filelist 2002-10-20 Rafael Teixeira * merged many sources from mcs/mcs, to resync 2002-10-05 Rafael Teixeira * merged many sources from mcs/mcs, to resync 2002-08-31 Rafael Teixeira * merged many sources from mcs/mcs, to resync 2002-09-03 Rafael Teixeira * integrated new version of Mono.GetOptions (reflection/attributes-based) 2002-08-31 Rafael Teixeira * merged expression.cs from mcs/mcs, to resync 2002-08-29 Rafael Teixeira * merged assign.cs, attribute.cs, class.cs, codegen.cs, const.cs, decl.cs, delegate.cs, ecore.cs, enum.cs, expression.cs, interface.cs, pending.cs, report.cs, rootcontext.cs, statement.cs, support.cs and typemanager.cs from mcs/mcs, to resync 2002-08-06 Rafael Teixeira * added "test" target to makefile * merged assign.cs, attribute.cs, cfold.cs, class.cs, codegen.cs, const.cs, constant.cs, decl.cs, delegate.cs, ecore.cs, enum.cs, expression.cs, interface.cs, modifiers.cs, parameter.cs, pending.cs, report.cs, rootcontext.cs, statement.cs, support.cs and typemanager.cs from mcs/mcs, to resync 2002-07-14 Rafael Teixeira * merged assign.cs, class.cs, ecore.cs, expression.cs, statement.cs and typemanager from mcs/mcs, to resync 2002-07-09 Rafael Teixeira * merged attribute.cs, ecore.cs, namespace.cs and statement.cs from mcs/mcs, to resync 2002-07-06 Rafael Teixeira * merged attribute.cs, class.cs, codegen.cs, ecore.cs, expression.cs, modifiers.cs, namespace.cs, report.cs, rootcontext.cs, statement.cs and typemanager.cs from mcs/mcs, to resync * changed driver.cs to follow mcs lead on error/warning counting and reporting 2002-06-23 Rafael Teixeira * merged attribute.cs, class.cs, ecore.cs, rootcontext.cs, support.cs and typemanager.cs from mcs/mcs, to resync * makefile makes csc reference a copy of Mono.GetOptions.dll (mbas.sln now compiles to mbas dir instead of mbas/bin/Debug) 2002-06-21 Rafael Teixeira * merged attribute.cs, class.cs, interface.cs, expression.cs, ecore.cs, modifiers.cs, rootcontext.cs, statement.cs and typemanager.cs from mcs/mcs, to resync * added pending.cs from mcs/mcs, to resync 2002-06-15 Rafael Teixeira * merged assign.cs, attribute.cs, enum.cs and namespace.cs from mcs/mcs, to resync * namespace.cs needed some fixing, because CSharpParser isn?t available 2002-06-15 Rafael Teixeira * merged delegate.cs, ecore.cs, typemanager.cs and rootcontext.cs from mcs/mcs, to resolve expression.cs blues 2002-06-15 Rafael Teixeira * oops merged expression.cs from mcs/mcs is breaking my make * driver.cs, assemblyinfo.cs wasn?t ready for prime time (offending lines were commented out) 2002-06-15 Rafael Teixeira * merged expression.cs from mcs/mcs 2002-06-12 Rafael Teixeira * corrected Module.TypeAttr property getter in module.cs 2002-06-12 Rafael Teixeira * merged typemanager.cs from mcs/mcs 2002-06-10 Rafael Teixeira * merged expression.cs and interface.cs from mcs/mcs 2002-06-09 Rafael Teixeira * merged const.cs, enum.cs, expression.cs and typemanager.cs from mcs/mcs * comments on module.cs 2002-06-07 Rafael Teixeira * merged class.cs, attribute.cs from mcs/mcs 2002-06-07 Rafael Teixeira * merged class.cs, enum.cs, expression.cs, interface.cs, rootcontext.cs and typemanager.cs from mcs/mcs * added module.cs (class Mono.MonoBASIC.Module - derived from Mono.CSharp.Class) * added System.XML and Microsoft.VisualBasic to the default config (driver.cs) 2002-06-07 Rafael Teixeira * merged class.cs and ecore.cs from mcs/mcs 2002-06-02 Rafael Teixeira * copied methods MakeName and CheckDef from mcs\cs-parser.jay to GenericParser.cs where they are inherited by mb-parser.jay/cs * put some code on the Module rule in mb-parser.jay to at least generate a class in the assembly, if I jump over the entry-point check code, while debugging 2002-05-31 Rafael Teixeira * class Mono.MonoBASIC.Tokenizer now handles - all valid line-terminators (CR, LF, CRLF, LS and PS) - escaped identifiers (like [Integer]) - old-fashioned comments syntax (REM Blah-Blah) 2002-05-31 Rafael Teixeira * modified mbas.ico to be a small version of mono?s logo (see mcs\MonoIcon.png) 2002-05-31 Rafael Teixeira * squashed some reduce/reduce conflicts out of mb-parser.jay 2002-05-31 Rafael Teixeira * merged codegen.cs from mcs * altered Driver.cs to work with new codegen.cs 2002-05-27 Rafael Teixeira * merged all I could from mcs source files into mbas * added VS.NET Solution and Project Files for mbas * added icon file and a vb-sources-filled testmbas directory * started this ChangeLog