2005-07-13 Maverson Eduardo Schulze Rosa <maverson@gmail.com>
[mono.git] / mcs / mbas / ChangeLog
1 2005-07-13 Maverson Eduardo Schulze Rosa <maverson@gmail.com>
2         * mb-parser.jay:
3         * block.cs: Support and successfully find goto target labels
4         declared out of block that contains the goto statement.
5
6 2005-07-13 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
7         *statement.cs: extract class Block into new source block.cs
8         *mbas.exe.sources: added newly extracted block.cs
9         *block.cs: eliminated "block.cs(252) warning CS0219: The variable 'cur' is assigned but its value is never used"
10
11 2005-07-12 Manjula GHM <mmanjula@novell.com>
12         * parameter.cs , ecore.cs : Changed error number and message according to .NET
13
14 2005-07-12 Manjula GHM <mmanjula@novell.com>
15         * cfold.cs: Support 'Nothing' for Constants.
16                  Added exception        
17                 
18 2005-07-07 Manjula GHM <mmanjula@novell.com>
19         * mb-parser.jay: To avoid Array modifiers specified on both a variable and its type
20
21 2005-07-06 Umadevi S <sumadevi@novell.com>
22         * statement.cs - suppressing warnings due to unused variables in mbas compiler.
23
24 2005-07-05 Umadevi S <sumadevi@novell.com>
25         * expression.cs - added support to handle DBNull
26
27 2005-06-30:5 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
28         *ecore.cs: some tentative code preparing to support automatic definition of variables
29         on first usage with Option Explicit Off commented out as it breaks on emit phase, and 
30         guesses wrong what should be automatically defined
31
32 2005-06-30:4 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
33         *statement.cs: some tentative code preparing to support automatic definition of variables
34         on first usage with Option Explicit Off. Converting backticks to apostrophes on messages
35
36 2005-06-30:3 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
37         *mb-parser.jay: small bits preparing to support automatic definition of variables
38         on first usage with Option Explicit Off
39         
40 2005-06-30:2 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
41         *assign.cs: Killed exception occurring when resolving an assignment 
42         to an undefined symbol (Explicit On scenario)
43
44 2005-06-30 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
45         *mb-parser.jay: Eliminating 'reduce/reduce conflicts' and 'rule never reduced'
46         by simplifying the directive_expression rule (formerly directive_exp).
47
48 2005-06-30 Manjula GHM <mmanjula@novell.com>
49         *mb-parser.jay: To support signed exponent
50
51 2005-06-30 Manjula GHM <mmanjula@novell.com>
52         *mb-tokenizer.c : Support hexadecimal literals - supports binary value 
53         of the integer literal - like &H8000S is "-32768" and not an overflow exception
54
55 2005-06-28 Manjula GHM <mmanjula@novell.com>
56         *class.cs : Support suitable property to override
57
58 2005-06-27 Manjula GHM <mmanjula@novell.com>
59         * mb-parser.jay:
60         *statement.cs: Support and successfully find label definition inside child block
61
62 2005-06-23 Manjula GHM <mmanjula@novell.com>
63         *mb-parser.jay: Clear the hashtable in end of block
64
65 2005-06-23 Manjula GHM <mmanjula@novell.com>
66         *mb-parser.jay: To disallow reassignment of object inside 'With...End With' block
67
68 2005-06-13 Manjula GHM <mmanjula@novell.com>
69         *statement.cs: To handle Goto in Try, Catch block
70
71 2005-06-10 Manjula GHM <mmanjula@novell.com>
72         *assign: To Support other types of source in Mid statement
73
74 2005-06-10 Manjula GHM <mmanjula@novell.com>
75         *assign: To Support Optional Max. Insert length value in Mid statement
76
77 2005-06-10 Manjula GHM <mmanjula@novell.com>
78         *assign.cs: Allow New Date assignment to other types
79
80 2005-06-08 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
81         * AssemblyInfo.cs : 
82                 - Added informational attributes that Mono.GetOptions shows in the help screen.
83                 - Bumped up the version number a bit 
84         
85 2005-06-07 Satya Sudha K <ksathyasudha@novell.com>
86         * class.cs : Disallowing default properties without parameters.
87         * Some cleanups in other files to get rid of warnings.
88
89 2005-06-03 Satya Sudha K <ksathyasudha@novell.com>
90         * expression.cs : Allowing '()' for property invocation with no args.
91         * typemanager.cs : 
92                 - Caching a property's arguments (as 'NoTypes') while registering a property
93                 - If a name resolves to a field as well as a property, treat it as a field
94                 - If a name resolves to a field as well as a event, giving preference to event
95         * parameters.cs : Case-insensitive search/comparison of parameter/arg names
96
97 2005-05-30 Satya Sudha K <ksathyasudha@novell.com>
98         * statement.cs : 'For Each' statement : Wrapping the body of the For loop inside an exception block 
99                          if the enumerator implements 'IDisposable' interface
100
101 2005-05-27 Satya Sudha K <ksathyasudha@novell.com>
102         * statement.cs :
103         * mb-parser.jay :
104                 - Supporting all kinds of case clauses (like 'A To B', 'Is >= 30')
105                 - Expressions of all primitive types can now be specified as 'Select' 
106                   and 'Case' expressions
107
108 2005-05-27 Manjula GHM <mmanjula@novell.com>
109         * mb-parser.jay : To support "Sub New()" without modifier       
110
111 2005-05-26 Manjula GHM <mmanjula@novell.com>
112         * typemanager.cs : Fix Enum conversion for two level assignment and added few more cases
113
114 2005-05-26 Manjula GHM <mmanjula@novell.com>
115         * statement.cs : Fix problem w.r.t 'Exit Sub' 
116
117 2005-05-24 Satya Sudha K <ksathyasudha@novell.com>
118         * statement.cs : Added few more members like 'memberName' and 'type_expr' to the 'StatementSequence'
119                          class. Added an appropriate constructor for the same.
120         * expression.cs: Late binding for method invocations involving object arguments
121                          
122
123 2005-05-23 Satya Sudha K <ksathyasudha@novell.com>
124         * statement.cs : Copying back the arguments (matching 'ByRef' parameters) in the reverse 
125                          order (starting with the last argument backwards) as done by vbc
126
127 2005-05-23 Satya Sudha K <ksathyasudha@novell.com>
128         * statement.cs : Support named arguments in late binding
129
130 2005-05-17 Satya Sudha K <ksathyasudha@novell.com>
131         * ecore.cs : Removed char <-> numeric/date conversions as they are not supported in vbc
132
133 2005-05-17 Satya Sudha K <ksathyasudha@novell.com>
134         * expressions.cs :
135                 - Disallowing named arguments for 'ParamArray' parameters
136                 - Creating named arguments (to replace missing arguments), in case other arguments are also named
137
138 2005-05-16 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
139         * driver.cs : correcting/refactoring EntryPoint fixing as per #74955
140                 adjusting references changed by Gonzalo to their new containing namespace.
141                 small renaming refactorings to make things clearer.
142         * CompilerOptions.cs : refactored out all things that now live in 
143                 Mono.GetOptions.Useful.CommonCompilerOptions
144
145 2005-05-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
146
147         * driver.cs: fix ambiguous reference.
148
149 2005-05-16 Manjula GHM <mmanjula@novell.com>
150         * literal.cs: Declare NullType
151         * typemanager.cs: Invoke proper Decimal constructor
152         * ecore.cs : Support Decimal type in literalized version
153         * const.cs : 
154         * constant.cs :
155         * expression.cs :
156                 Support Decimal constant declaration  and retrieval of Decimal structure 
157                 members from corelib
158
159 2005-05-16 Satya Sudha K <ksathyasudha@novell.com>
160         * parameter.cs : Converting the default value (for optional param) to param type.
161         * ecore.cs     : Fixed string <-> char constant conversions.
162         * expression.cs :
163         * argument.cs   :
164         * mb-parser.jay :
165                         Support for named arguments
166                 
167 2005-05-12:2 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
168         * driver.cs : mcs having C# 2.0 features makes me slip some simplified delegate creation 
169                 code, that breaks with csc in Windows (as pointed by Atsushi)
170         * CompilerOptions.cs : moved some delegate definitions outside the class for shorter name when using.
171
172 2005-05-12 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
173         * driver.cs : slimmed down, most non-specific code moved to new class/source CompilerOptions.
174                 Also steps where individualized and put on a array of delegates for sequencial execution
175                 with stop-on-first-blunder behavior. It is similar to the configurable pipeline of the
176                 boo compiler.
177         * CompilerOptions.cs: added, refactored from inside driver.cs (some code/properties will migrate
178                 further to Mono.GetOptions.Usefull.CommonCompilerOptions)
179         * mbas.exe.sources: added CompilerOptions.cs
180
181 2005-05-11 Ankit Jain  <ankit@corewars.org>
182
183         * expression.cs (Invocation.CheckParameterAgainstArgument): Return ConversionType.Widening
184         for a NoArg argument. Fix earlier patch.
185
186 2005-05-11 Ankit Jain  <ankit@corewars.org>
187
188         * expression.cs (Invocation.CheckParameterAgainstArgument): Return ConversionType.Narrowing
189         for a NoArg argument.
190         (Invocation.IsApplicable): Don't create a REF type argument if it is NoArg.
191         (Invocation.ConstructArgumentList): Create argument with its DefaultValue for a NoArg.
192
193 2005-05-10 Satya Sudha K <ksathyasudha@novell.com>
194         * statement.cs, expression.cs, assign.cs :
195                 Patch to allow latebinding expressions to be specified as ByRef arguments 
196                 
197 2005-05-10  Raja R Harinath  <rharinath@novell.com>
198
199         * driver.cs (InitializeRootContextAndOthersFromOptions):
200         Overwrite RootContext.RootNamespace only if there's a value.
201
202 2005-05-09 Satya Sudha K <ksathyasudha@novell.com>
203         * parameter.cs : Support 'Optional ByRef' parameters
204         * statement.cs : Using 'System.Reflection.Missing.Value' in case of missing argument for 
205                          LateBinding cases
206                 
207 2005-05-07 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
208         * driver.cs : Oops, correcting some find-and-replace mishaps
209
210 2005-05-06 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
211         * driver.cs : Refactored to use Mono.GetOptions.Useful.CommonCompilerOptions
212
213 2005-05-05 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
214         * mb-parser.jay : Correction to allow optional type caracters in some situations.
215         Now 6 more tests under mbas/Test/tests/types compile and 3 more compile and run.
216         Patch contributed by Brazilian MonoBASIC Team:
217                 Aldo Monteiro do Nascimento <aldomonteiro@gmail.com>
218                 Alessandro de Oliveira Binhara <binhara@psl-pr.softwarelivre.org>
219                 Alexandre Rocha Lima e Marcondes <alexandre.marcondes@psl-pr.softwarelivre.org>
220                 Ramiro Batista da Luz <ramiroluz@gmail.com>
221                 Renato Suga <renatos@techresult.com.br>
222
223 2005-05-05 Satya Sudha K <ksathyasudha@novell.com>
224         * statement.cs
225         * mb-parser.jay:
226                 Changed the 'For' class to :
227                 - Handle negative step values
228                 - Supporting all types (numeric/object) of loop control variables
229
230         * expression.cs : Removed some unused methods
231         * ecore.cs      : Added float/double -> decimal conversion to NarrowingConversion
232
233 2005-05-02 Manjula GHM <mmanjula@novell.com>
234         * expression.cs : Support Reference Parameter - when argument and parameter are different.
235
236 2005-04-29 Satya Sudha K <ksathyasudha@novell.com>
237         * argument.cs
238         * statement.cs
239         * expression.cs
240         * assign.cs
241         * mb-parser.jay:
242                 Support for 'LateSet', 'LateIndexGet', 'LateIndexSet'
243
244         * ecore.cs :
245                 Minor fixes in conversions
246
247 2005-04-26 Manjula GHM <mmanjula@novell.com>
248         *statement.cs
249                 "out" is not supported as Parameter Modifier in VB.NET
250
251 2005-04-26 Manjula GHM <mmanjula@novell.com>
252         *support.cs
253         *parameter.cs
254         *argument.cs
255         *expression.cs
256         *statement.cs
257                 "out" is not supported as Parameter Modifier in VB.NET
258 2005-04-21 Satya Sudha K <ksathyasudha@novell.com>
259         * ecore.cs :
260                 Fixed object to bool/float/double conversions
261                 Fixed numeric <--> Enum conversions 
262         * statement.cs :
263         * expression.cs :
264         * mb-parser.jay :
265                 (Initial) Support for 'LateGet'
266
267 2005-04-18 Manjula GHM <mmanjula@novell.com>
268         * mb-parser.jay:
269                 Support expressions for Directives
270 2005-04-19 Satya Sudha K <ksathyasudha@novell.com>
271         * ecore.cs :
272                 Fixed conversions from 'object' to double, float, decimal and long
273
274 2005-04-18 Manjula GHM <mmanjula@novell.com>
275         * mb-parser.jay:
276                 Support Conditional Constant Directives
277
278 2005-04-13 Manjula GHM <mmanjula@novell.com>
279         * expression.cs : To support  'Or' argument of AttributeTargets in AttributeUsage
280 2005-04-12 Satya Sudha K <ksathyasudha@novell.com>
281         * statement.cs :
282                 Introduced a class 'StatementSequence', to translate a late-binding call to a block of statements
283         * expression.cs :
284                 Support for late binding (Not complete yet. Some basic method invocations work as of now)
285         
286 2005-04-06 Ritvik Mayank <mritvik@novell.com>
287            by Sudharsan V <vsudharsan@novell.com>
288         * class.cs: correction for reflecting the correct Line No. in the Error message 
289 2005-04-05 Ritvik Mayank <mritvik@novell.com>
290            Patch Submitted by Sudharsan V <vsudharsan@novell.com>
291         * mb-parser.jay : correction for reflecting the correct Line No. in the Error message   
292
293 2005-03-31 Manjula GHM <mmanjula@novell.com>
294         *mb-tokenizer.cs:To fix make test failure
295 2005-03-31 Manjula GHM <mmanjula@novell.com>
296         *mb-tokenizer.cs: Support declaration of decimal numbers with no digits before point like '.52' instead of '0.52'
297
298 2005-03-29 Manjula GHM <mmanjula@novell.com>
299         *assign.cs: Disallow New Date assignment with types other than date and object type
300
301 2005-03-25:3 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
302         * AssemblyInfo.cs: Small increment in the version number to publicize --codepage support
303
304 2005-03-25:2 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
305         * genericparser.cs: another static Parse overload to support specifying encoding when parsing from a file.
306         * driver.cs: obsoletes --tokenize, record currentEncoding for each source-file to be processed, call the new Parse overload
307                 Implement support for a --codepage option similar to mcs. Example: 
308                         mono mbas.exe --codepage:1252 WindowsANSI.vb --codepage:utf8 UTF8.vb --codepage:reset currentcharset.vb
309
310 2005-03-25:1 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
311         * genericparser.cs: another Parse overload to support specifying encoding when parsing from a file.
312         Preparing to implement support for a /codepage option similar to mcs
313
314 2005-03-24 Manjula GHM <mmanjula@novell.com>
315         * mb-tokenizer.cs: To fix parser error for ExternalSource Directives
316
317 2005-03-24 Satya Sudha K <ksathyasudha@novell.com>
318         * mb-parser.jay : 
319                         - Support for Dictionary Member Access Expressions
320                         - Exponentiation operator in compound assignments
321         * expression.cs : Merged 'Exponentiation' class with 'Binary' class
322         * cfold.cs      : Fixed constant division (both '\' and '/')
323
324 2005-03-24 Manjula GHM <mmanjula@novell.com>
325           * mb-parser.jay,mb-tokenizer.cs: Support 'End Statement' in parser and tokenizer file
326
327 2005-03-24 Manjula GHM <mmanjula@novell.com>
328            Sudharsan V <vsudharsan@novell.com>
329           * mb-parser.jay,mb-tokenizer.cs:
330                 Revamped end of block logic 
331
332 2005-03-24 Manjula GHM <mmanjula@novell.com>
333         * statement.cs: Fix bug in 'Exit Function'
334
335 2005-03-23 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
336         * AssemblyInfo.cs: Some more diligent authors
337         * ecore.cs, cfold.cs, delegate.cs: remove warnings-causing code 
338
339 2005-03-22 Satya Sudha K <ksathyasudha@novell.com>
340         * mb-parser.jay
341         * expression.cs :
342                         Fix for 'MyClass' instance expressions 
343
344 2005-03-22 Satya Sudha K <ksathyasudha@novell.com>
345            Sudharsan V <vsudharsan@novell.com>
346         * mb-parser.jay : 
347                         Removed some conflicts in the grammar
348
349 2005-03-21 Manjula GHM <mmanjula@novell.com>
350         * statement.cs: Implementation of 'End' Statement which terminates execution immediately
351
352 2005-03-18 Satya Sudha K <ksathyasudha@novell.com>
353         * mb-parser.jay :
354         * mb-tokenizer.cs :
355         * expression.cs :
356                 Supported 'Like' operator
357
358 2005-03-18 Manjula GHM <mmanjula@novell.com>
359            Sudharsan V <vsudharsan@novell.com>
360           * mb-parser.jay:
361               Some more fixes related to displaying correct line number
362
363 2005-03-17 Manjula GHM <mmanjula@novell.com>
364         *ecore.cs : rounding the double values before converting to Integer types
365
366 2005-03-17 Manjula GHM <mmanjula@novell.com>
367         *ecore.cs : Support Double in case statement and do necessary conversion to Int Literal
368
369 2005-03-16 Manjula GHM <mmanjula@novell.com>
370         * mb-parser.jay:
371                 Support 'expression TO expression' case clause for select statement
372
373 2005-03-15 Satya Sudha K <ksathyasudha@novell.com>
374         * mb-parser.jay :
375         * expression.cs :
376                 Supported '\' (int division) operator
377
378 2005-03-11 Manjula GHM <mmanjula@novell.com>
379            Sudharsan V <vsudharsan@novell.com>
380           * mb-parser.jay:
381               Fixes related to displaying correct line number,error message and handle End of blocks
382
383 2005-03-11 Satya Sudha K <ksathyasudha@novell.com>
384         * expression.cs :
385                          Support for 'Nothing' with all operators.
386                          A few fixes to the 'DoNumericPromotions' method
387         * ecore.cs      :
388                          Fixed Boolean constant conversions
389                          Supported conversion of 'nothing' to value types
390
391 2005-03-10 Manjula GHM <mmanjula@novell.com>
392         *expression.cs :
393                 Support 'Is' for all reference types
394
395 2005-03-10 Satya Sudha K <sathyasudha@novell.com>
396         * mb-parser.jay :
397         * expression.cs :
398                         Support for 'AndAlso' and 'OrElse' operator
399
400 2005-03-09 Manjula GHM <mmanjula@novell.com>
401         *mb-parser.jay :
402         *expression.cs :
403                 Support 'Is' Expression
404
405 2005-03-08 Satya Sudha K <ksathyasudha@novell.com>
406         * ecore.cs      : Included Decimal -> Single/double conversions in 'WideningConversionExists' method
407         * expression.cs : Fixed the behaviour of some Unary operators
408                           Allowing Exponentiation on object types
409
410 2005-03-08 Manjula GHM <mmanjula@novell.com>
411         *assign.cs : Bug fix - new Object creation and object assignment
412
413 2005-03-07 Satya Sudha K <ksathyasudha@novell.com>
414         * mb-parser.jay : Support for shift operators
415         * assign.cs     : Calling 'RuntimeHelpers.GetObjectValue' during new Object creation 
416                            (to make it consistent with vbc)
417         * ecore.cs      : Implicit constant conversions - rounding the float/double values before 
418                           converting to Integer types
419         * expression.cs : 
420                          Unary class :
421                                 * Corrected the opertor names
422                                 * Allowing unary plus and minus on strings (by converting 
423                                   to double)
424                                 * Allowing 'Not' operator on all numeric/string types 
425                                   (float/double/decimal/strings are converted to long)
426                                 * In case of short/byte operations, changing the end result back to short/byte
427                         Exponentiation class :
428                                 * Disallowing '^' operator on dates/char/ reference types
429                         Binary class :
430                                 * Corrected operator names
431                                 * And-ing the right operand with appropriate mask in case of shift operators
432                                 * In case of short/byte operations, changing the end result back to short/byte
433                                 * Re-organised the code of the 'ResolveOperator' method:
434                                         * code organised according to expression types
435                                         * Performing the required conversions before 'OverloadResolve'
436                                         * Did the following fixes :
437                                                 * Fixed string/bool behaviour with logical/shift operators
438                                                 * Disallow arithmatic operators on char and dates
439                                                 * Fixed DateTime comparisons
440                                                 * Using methods of 'System.Decimal' for all Decimal operations
441                                                 * Supporting all operators with enum types
442                                                 * Allowing arithmatic/relational/shift/logical operators on type 'object'
443
444 2005-03-04 Manjula GHM <mmanjula@novell.com>
445         * mb-parser.jay:
446         * assign.cs:
447                 Support Mid Assignment Statement
448
449 2004-12-01 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
450         * driver.cs: correcting the handling of many options. 
451         * Upgraded to latest Mono.GetOptions that supports vbc style boolean arguments /debug+ /debug-, and /help2 to hide less used options
452
453 2005-02-25 Satya Sudha K <ksathyasudha@novell.com>
454         * ecore.cs 
455         * expression.cs: 
456                 Fix for default properties by Raja Harinath
457
458 2005-02-22 Manjula GHM <mmanjula@novell.com>
459         *expression.cs: Handle String and date before Overloadresolve
460                         Added code for char + char
461                         Handle One of operands is value type in Relational operators 
462                         Handle when both are Object types
463
464 2005-02-22 Manjula GHM <mmanjula@novell.com>
465         *expression.cs: Handle Bool w.r.t Logical operators 
466
467 2005-02-21 Manjula GHM <mmanjula@novell.com>
468         *expression.cs: Handle  all cases of relational Operators w.r.t String types 
469
470 2005-02-21 Manjula GHM <mmanjula@novell.com>
471         *mb-parser.jay: Throws error for missing END statements - by Sudharsan V
472
473 2005-02-18 Satya Sudha K <ksathyasudha@novell.com>
474         * ecore.cs :
475                  Modified Implicit Constant conversions to :
476                  * Handle Long/Float/Double Constants also
477                  * Throw a compile time error if constant cannot be converted to a specified type
478                    (as with vbc)
479         * assign.cs :
480         * expression.cs :
481                 Widening Enum constants to constants of underlying type before doing the conversions
482         * cfold.cs :
483                 Added support for exponentiation operator for constants
484         * enum.cs : Allowing double values to be specified as enum values
485
486
487 2005-02-17 Manjula GHM <mmanjula@novell.com>
488         * expression.cs :
489                  Support relational operator for other types
490
491 2005-02-15 Manjula GHM <mmanjula@novell.com>
492         * ecore.cs :
493                  Fixed conversion from char[] to String
494
495 2005-02-15 Manjula GHM <mmanjula@novell.com>
496         * expression.cs: Fixed concat of string and char using '+" operator 
497
498 2005-02-14 Manjula GHM <mmanjula@novell.com>
499         * ecore.cs :
500                  Fixed all String to char conversions
501
502 2005-02-14 Satya Sudha K <ksathyasudha@novell.com>
503         * expression.cs: 
504                  - Fixed one of my previous checkin, which was breaking some test cases.
505         * ecore.cs :
506                  - Fixed the explicit conversion of float/double to integral types in some places.
507
508 2005-02-11 Ritvik Mayank <mritvik@novell.com>
509         * class.cs
510         * decl.cs
511         * mb-parser.jay
512         * statement.cs
513                 Changed for reflecting correct Error Number
514                                                 
515 2005-02-10 Satya Sudha K <ksathyasudha@novell.com>
516         * expression.cs: 
517                  - Implemented Exponentiation operator (^)
518                  - Fixed the behaviour of strings in arithmatic operations (only addition 
519                    was supported before)
520                  - Fixed Decimal arithmatic with float/double types
521                  - If operation = Division, promoting both operands to double, otherwise
522                    doing numeric promotions
523         * mb-parser.jay : Changes related to the Exponentiation operator
524
525 2005-02-10 Manjula GHM <mmanjula@novell.com>
526         * expression.cs: Fixed concat of date and string using '+" operator 
527
528 2005-02-08  Satya Sudha K  <ksathyasudha@novell.com>
529         * assign.cs: Fix for implicit conversions in Compound Assignments
530         * ecore.cs :
531                 - Fixed the explicit conversion of float/double to integral types
532                   by rounding the float/double values before performing the actual 
533                   conversion
534                 - Using 'ConvCast' instead of 'OpcodeCast' for Narrowing conversions
535
536 2005-02-07  Ritvik Mayank <mritvik@novell.com>
537         * modifiers.cs
538         * class.cs
539         * decl.cs
540         * expression.cs
541         * tree.cs
542         * statement.cs
543                     Changed for reflecting correct Error Number.
544
545 2005-02-07  Manjula GHM  <mmanjula@novell.com>
546         * mb-parser.jay: Some more fixes related to displaying correct line number
547
548 2005-02-04  Satya Sudha K  <ksathyasudha@novell.com>
549         * ecore.cs      : Fixed the implicit conversion of float/double to integral types:
550                                 - Rounding the float/double values before performing the actual conversion
551
552         * expression.cs : 1) Added a class 'StringConcat' to handle string concatenations
553                           2) Fixed string conversions in arithmatic operations
554
555         * mb-parser.jay : Create a new 'StringConcat' object (instead of Binary) for concat_expression
556  
557 2005-02-03  Manjula GHM  <mmanjula@novell.com>
558         *mb-parser.jay : Reports error with correct line number in most of the cases covered by existing testcases. Need to cover in expressions and few more areas. 
559  
560 2005-02-03  Manjula GHM  <mmanjula@novell.com>
561         * mbas.csproj
562         * mbas.sln
563         Modified Project and solution files to reflect new changes
564
565 2005-01-29  Ritvik Mayank  <mritvik@novell.com>
566         * ecore.cs : 
567         * class.cs : 
568         * cfold.cs : 
569         * attribute.cs : 
570         * statement.cs : 
571         * mb-parser.jay : 
572                 Changed for reflecting correct Error Number/Message.
573         
574 2005/01/29 Satya Sudha K <ksathyasudha@novell.com>
575         * ecore.cs : Added code for String conversions.
576
577 2005/01/28 Satya Sudha K <ksathyasudha@novell.com>
578         * ecore.cs : Added a few fixes for Boolean to Numeric Conversions
579
580 2005/01/25 Satya Sudha K <ksathyasudha@novell.com>
581         * ecore.cs : Added support for Implicit numeric conversions.
582                 Most of the work on this patch done by Jambunathan K
583
584 2005/01/17 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
585         * driver.cs : correct handling of /imports command-line option.
586                 Patch from Hans Kratz <kratz@omnicore.com>
587
588 2005-01-13  Ritvik Mayank  <mritvik@novell.com>
589         * mb-parser.jay: Changed Error Number for Modifiers.PRIVATE to throw the right ExceptionNumber as 31089 .       
590         * mb-parser.jay: Added Modifiers.PROTECTED to throw the right Error Number as 31047 . 
591                   
592 2005-01-13  Ritvik Mayank  <mritvik@novell.com> 
593         * ecore.cs: Changed the Error Number for setter as 30526 and getter as 30524 in Expression DoResolveLValue .
594         * expression.cs: Changed the Error Number for set == null as 30526 and get == null as 30524 .
595
596 2005-01-13  Ritvik Mayank  <mritvik@novell.com>
597         * statement.cs: For 'if (RedimTarget.Type.GetArrayRank() != args.Count)' changed the Error Number as 3415 .
598
599 2005-01-12 Anirban Bhattacharjee <banirban@novell.com>
600         * mb-parser.jay: Replaced "logical_end_of_line" with "end_of_stmt" in couple of places
601                          to support delemeter ':' along with "EOL" as end of statement
602
603 2005-01-12 Anirban Bhattacharjee <banirban@novell.com>
604         * statement.cs: Another trivial correction 
605
606 2005-01-11 Anirban Bhattacharjee <banirban@novell.com>
607         * statement.cs: A trivial correction in yesterday's check-in
608
609 2005-01-10 Anirban Bhattacharjee <banirban@novell.com>
610         * mb-parser.jay:
611         * class.cs:
612         * statement.cs:
613         * rootcontext.cs:
614         * mb-tokenizer.cs:
615         * decl.cs:
616         * expression.cs:
617         * attribute.cs:
618         * enum.cs:
619         * codegen.cs:
620                 Removed warnings from all the above files which were showing up during make
621
622
623 2005-01-10 Anirban Bhattacharjee <banirban@novell.com>
624         * mb-parser.jay: Check for the overloaded property  
625
626 2005-01-10 Anirban Bhattacharjee <banirban@novell.com>
627         * class.cs: A better check provided before adding a property to TypeContainer
628
629 2004-12-21 Anirban Bhattacharjee <banirban@novell.com>
630         * class.cs:
631         * Attribute.cs
632         * mb-parser.jay
633         * pending.cs:
634         * typemanager.cs:
635                 IndexerName variable is now known as DefaultPropName in the above files
636
637 2004-12-21 Anirban Bhattacharjee <banirban@novell.com>
638         * mb-parser.jay: A check which restrict declaring more than one property
639                         as default within same class
640
641 2004-12-21 Anirban Bhattacharjee <banirban@novell.com>
642         * class.cs: -Mbas will emit DefaultMemberConstuctor attribute for the class
643                     which is having Default Property so that it can be recognized by
644                     other assemblies
645                     - Removed Indexer class and some of the legacy code inherited from mcs
646         * typemanager.cs: Initialized DefaultMemberAttribute constructor info   
647
648 2004-12-01 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
649         Ooops small bits on:
650         * driver.cs: -q --quiet works, inclusive for the "Alpha" message
651         * Test/misc/Makefile : Added dependency on newly compiled compiler for the test executable
652
653 2004-12-01 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
654         * driver.cs: it was "monostyled" and some extract method refactorings to make things clear
655         now -q --quiet works, inclusive for the "Alpha" message
656         * Test/misc/Makefile : Added dependency on newly compiled compiler for the test executable
657
658 2004-11-30 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
659         * Test/misc/Makefile : Compile new RedimPreserve.vb test source
660         * Added Test/misc/RedimPreserve.vb
661     
662 2004-11-30  Alexandre Rocha Lima e Marcondes <alexandremarcondes@psl-pr.softwarelivre.org>
663         * Makefile: Included Microsoft.VisualBasic.dll assembly on LOCAL_MCS_FLAGS.
664         * expression.cs: Created class Preserve to implement REDIM PRESERVE syntax.
665         * statement.cs: Implemented REDIM PRESERVE syntax on Redim.Resolve().
666
667 2004-11-25  Raja R Harinath  <rharinath@novell.com>
668         * Makefile (SUBDIRS): Just list Test.
669         (mb-parser.cs): Depend on jay/skeleton.cs.
670
671 2004-11-25  Raja R Harinath  <rharinath@novell.com>
672
673         Update to changes in jay/skeleton.cs.
674         * genericparser.cs (yacc_verbose_flag): Change to 'int'.
675         * mb-parser.jay (parse): Update to changes.
676         * driver.cs (verbose): Likewise.
677
678 2004-11-24  Jambunathan K  <kjambunathan@novell.com>
679         * class.cs: Factored out classes - 1) GetMethod and SetMethod from
680         Property and 2) AddDelegateMethod and RemoveDelegateMethod from
681         Event respectively.
682         
683         * mb-parser.jay: Related changes.
684
685 2004-11-22  Jambunathan K  <kjambunathan@novell.com>
686         * enum.cs: Factored out a new class EnumMember from the existing
687         class Enum. Much of the functionality that existed in
688         Enum.LookupEnumValue() is now moved in to
689         EnumMember.DoDefineMember().
690
691         One significant departure from the previous Enum implmenentation
692         is that now the resolution of an EnumMember's value happens in the
693         EmitContext set up for the Enum.
694         
695         * attribute.cs: 
696         * expression.cs: Trivial changes related to the above change.
697
698 2004-11-22  Jambunathan K  <kjambunathan@novell.com>
699         * Makefile: Added new make target 'consolidate-test-results'.
700
701 2004-11-22  Jambunathan K  <kjambunathan@novell.com>
702         * Makefile: Run "make run-test" or "make run-test-ondotnet" to
703         exercise mbas test cases.
704
705         * testmbas: Moved the test files under this directory to Test/misc
706         where it rightfully belongs.
707
708 2004-11-17  Jambunathan K  <kjambunathan@novell.com>
709         * attribute.cs: Temporarily made Attribute.UnManagedType public.
710         
711         * class.cs: Removed the instance method
712         MethodCore.LabelParameters() and moved it's functionality to the
713         new instance methods Parameters.LabelParameters() and
714         Parameter.DefineParameter().
715         
716         * parameter.cs: Introduced new instance methods
717         Parameters.LabelParameters() and Parameter.DefineParameter() and
718         slightly improved Parameter.ApplyAttributeBuilder().
719         
720 2004-11-17  Jambunathan K  <kjambunathan@novell.com>
721         * mb-parser.jay: During multi-file compilation, global attributes
722         were not getting parsed properly. Fixed the same.
723         
724 2004/10/22 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
725         * mb-parser.jay : correcting global attributes handling, because it was 
726            issuing wrong warnings for trivial files like testmbas/WriteOK.vb.
727         * Makefile : adding testmbas/AssemblyInfo.vb to some test compilations 
728
729 2004-11-10  Jambunathan K  <kjambunathan@novell.com>
730         * attribute.cs: 1) Replaced the static method
731         Attribute.GetValidPlaces() with an equivalent instance method
732         Attribute.GetValidTargets() 2) Added new methods Attributes.Emit
733         () and Attribute.Emit(). 3) Migrated functionality of
734         ApplyAttributes to ApplyAttributeBuilder of respective classes.
735
736         * class.cs, decl.cs, codegen.cs, const.cs, parameter.cs :
737         Implemented ApplyAttributeBuilder() in the following classes:
738         TypeContainer, Constructor, Field, Property, Event, DeclSpace,
739         AssemblyClass, ModuleClass, Const, Method, Parameter.
740         
741         * codegen.cs: Implemented Emit() in the following classes:
742         AssemblyClass and ModuleClass.
743
744         The ApplyAttributeBuilder() is currently just a placeholder for
745         future code that is yet to come.
746
747 2004-11-09  Jambunathan K  <kjambunathan@novell.com>
748         * class.cs: Coalesced the functionality of Property and
749         PropertyBase in to Property class and removed the class
750         PropertyBase.
751
752
753 2004-11-09  Jambunathan K  <kjambunathan@novell.com>
754
755         * attribute.cs: Injected a new virtual property
756         Attributable.AttributeTargets
757
758         * decl.cs: Made MemeberCore a derived class of
759         Attributable.
760
761         * parameter.cs: Made Parameter a derived class of
762         Attributable.
763         
764         * class.cs: Commented out the "never used" class Indexer. I
765         suspect that the class will never be required in VB.NET context
766         and can possibly be stripped off after careful inspection.
767
768         * tree.cs, module.cs, interface.cs, enum.cs, delegate.cs,
769         const.cs, codegen.cs: Changes necessiated by the above changes.
770
771 2004-11-07  Jambunathan K  <kjambunathan@novell.com>
772         * typemanager.cs: Removed TypeManager.builder_to_attr which was
773         redundant and replaced LookupAttr with LookupClass.
774
775         * rootcontext.cs: 
776         * module.cs: Miscellaneous changes
777
778         * mb-parser.jay: Upadted actions of the attributes grammar
779
780         * codegen.cs: 1) Introduced new classes CommonAssemblyModulClass,
781         AssemblyClass, ModuleClass 2) Introduced following methods
782         CodeGen.AddGlobalAttributes, CodeGen.EmitGlobalAttributes
783
784         * class.cs: Factored out TypeContainer.AttributeUsage
785
786         * attribute.cs: 1) Factored out Attribute.UsageAttribute and
787         Attribute.GetAttributeUsage 2) Introducing the new base class
788         Attributable from which all Attributable types will be derived in
789         the future 3) Added new accessors Attribute.IsAssemblyAttribute
790         and Attribute.IsModuleAttribute
791
792 2004-11-06  Jambunathan K  <kjambunathan@novell.com>
793         * rootcontext.cs: Removed the static field -
794         RootContext:global_attribute.
795
796 2004-11-06  Jambunathan K  <kjambunathan@novell.com>
797         * class.cs: 
798         * attribute.cs: Removed the incomplete and (for now) unnecessary
799         Mono.MonoBASIC.Operator class. Let us bother about this later.
800
801         Stripping off these unused bits will help me in 1) refactoring the
802         mbas Attributes related code 2) reusing the code from the mcs code
803         base.
804         
805 2004-11-06  Jambunathan K  <kjambunathan@novell.com>
806         * class.cs: Removed the incomplete and (for now) unnecessary
807         operator methods. Let us bother about this later.
808
809 2004-11-06  Jambunathan K  <kjambunathan@novell.com>
810         * attribute.cs: Removed the redundant AttributeSection class and
811         moved it's functionality to Attributes class. 
812         * class.cs: 
813         * mb-parser.jay: 
814         * module.cs: Replaced references to AttributeSection with the equivalent constructs.
815         * rootcontext.cs: Removed the following unused methods
816         AddGlobalAttribute and AddGlobalAttributeSection.
817
818 2004-11-03 Anirban Bhattacharjee <banirban@novell.com>
819         * mb-parser.jay: Trivial fix for bug #68985
820
821 2004-11-04  Jambunathan K  <kjambunathan@novell.com>
822         * mb-parser.jay: Syntactic error handling for attribute grammar.
823
824 2004-10-25 Anirban Bhattacharjee <banirban@novell.com>
825         * statement.cs: VB .Net specific exception number
826
827 2004-10-25 Anirban Bhattacharjee <banirban@novell.com>
828         * mb-parser.jay: Enhanced catch grammar to accept
829                         'When' clause
830         * statement.cs: Changed Catch and Try classes accordingly
831                         to emit catch statement conditionally           
832
833 2004/10/22 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
834         * driver.cs : accept also -t:library as vbc does, besides /target:library
835
836 2004-10-21 Anirban Bhattacharjee <banirban@novell.com>
837         * statement.cs: Introduced few specific execptions
838                         Changed exception number
839
840 2004-10-21 Anirban Bhattacharjee <banirban@novell.com>
841         * statement.cs: A trivial fix to get Exit Try working 
842
843 2004-10-21  Jambunathan K  <kjambunathan@novell.com>
844         * typemanager.cs (LookupType, LookupTypeDirect): Added a negative
845         cache for failed type lookups (stolen from mcs' typemanager.cs).
846         mbas gets a performance boost of about 20 times due to this
847         change.
848
849         * driver.cs (MainDriver): Made the warning message a little less
850         scary and more inviting for first time users.
851
852 2004-10-19 Anirban Bhattacharjee <banirban@novell.com>
853         * mb-parser.jay: Enhanced For Each...Next statement grammar
854
855 2004-10-15 Anirban Bhattacharjee <banirban@novell.com>
856         * mb-parser.jay: Little improvement in For...next statement
857
858 2004-10-14 Anirban Bhattacharjee <banirban@novell.com>
859         * mb-parser.jay: For statement is enabled to take
860                 optional declaration of the counter variable.
861                 E.g. now for statement can be declared as
862                 For i as integer = 0 to 5
863                 End For
864
865 2004/10/08 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
866         * Makefile: added target 'profile', changed some sources in testmbas/ to use for that purpose.
867
868 2004-10-11 Anirban Bhattacharjee <banirban@novell.com>
869         * mb-parser.jay: More improvement in 'IF' statement
870
871 2004-10-11 Anirban Bhattacharjee <banirban@novell.com>
872         * mb-parser.jay: If statement is enabled to parse
873                 following type of statement
874                 If <condition> Then <statement> else <statement>
875
876 2004/10/08 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
877         * typemanager.cs: Changing StandardModule to use less memory, by doing string 
878                 concatenation only once. It was wasting 1 MB on the test case.
879
880 2004-10-06 Anirban Bhattacharjee <banirban@novell.com>
881         * mb-parser.jay: Added support for Call keyword in invocation statement
882
883 2004-10-01 Anirban Bhattacharjee <banirban@novell.com>
884         * ecore.cs: Bug fixing - when event raised from other assembly
885
886 2004-09-30 Anirban Bhattacharjee <banirban@novell.com>
887         * mb-parser.jay:
888         * statement.cs:
889                 Removed unused event_target field from
890                 AddHandler and RemoveHandler
891
892 2004-09-30 Anirban Bhattacharjee <banirban@novell.com>
893         * mb-parser.jay: RemoveHandler function made cleaner
894
895 2004-09-30 Anirban Bhattacharjee <banirban@novell.com>
896         * expression.cs:
897         * ecore.cs:
898                 Fix for resolution of event expression 
899                 when we have a AddHandler statement 
900                 like 
901                 AddHandler Me.E, AddressOf Me.EH
902                 Submitted by Raja Harinath<rharinath@novell.com>
903
904 2004-09-30 Anirban Bhattacharjee <banirban@novell.com>
905         * mb-parser.jay: Unnecessary to and fro conversion of types
906                         is removed from AddHandler function
907
908 2004-09-23 Anirban Bhattacharjee <banirban@novell.com>
909         * expression.cs: Enhanced mbas to resolve Default property or indexer
910
911 2004-09-21 Anirban Bhattacharjee <banirban@novell.com>
912         * mb-parser.jay: Fixed bug #66231 -
913          Now, Me.SubName, MyBase.SubName or any other qualified name 
914          is supported by AddressOf operator
915
916 2004-09-15 Anirban Bhattacharjee <banirban@novell.com>
917         * enum.cs: Made Enum member lookup case insensitive
918
919 2004-09-15 Anirban Bhattacharjee <banirban@novell.com>
920         * support.cs: Retrieving default value from another assembly in ReflectionParameters class
921
922 2004-09-15 Anirban Bhattacharjee <banirban@novell.com>
923         * class.cs: Support for enum in default constant value for optional parameters
924
925 2004-09-14 Anirban Bhattacharjee <banirban@novell.com>
926         * mb-parser.jay: Fixed exception number for type confliction in method parameter
927
928 2004-09-14 Anirban Bhattacharjee <banirban@novell.com>
929         * class.cs: Set default constant value for optional parameters in ParameterBuilder
930         * parameter.cs: Setting optional attribute
931                 These two fixes makes sure that optional parameter with default value get emitted correctly
932
933 2004-08-27 Anirban Bhattacharjee <banirban@novell.com>
934 2004-09-08 Bernie Solomon <bernard@ugsolutions.com>
935         * mb-parser.jay: fix CopyTo args when parsing parameters
936
937 2004-09-08 Bernie Solomon <bernard@ugsolutions.com>
938         * expression.cs: cope with ParamArray for no args
939         * mb-parser.jay: dump parsing exception with --stacktrace
940
941 2004/08/19 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
942         * mb-parser.jay : some changes just not to stumble in global attributes definitions in multiple-lines 
943                 like we have in VS.NET generated AssemblyInfo.vb files. still need to really process that definitions like mcs does
944
945 2004-09-07 Bernie Solomon <bernard@ugsolutions.com>
946         * mb-parser.jay:
947         * mb-tokenizer.cs: first cut at implementing
948         op assign
949
950 2004-09-07 Bernie Solomon <bernard@ugsolutions.com>
951         * ecore.cs:
952         * enum.cs:
953         * expression.cs:
954         * mb-parser.jay:
955         * support.cs: work on improving overload resolution
956
957 2004-08-30 Bernie Solomon <bernard@ugsolutions.com>
958         * class.cs (FindMembers): filter on modflags
959         for constructors & constructors are never inherited
960
961         * decl.cs (SetupCache): constructors are not
962         inherited
963
964 2004-08-27 Anirban Bhattacharjee <banirban@novell.com>
965         * driver.cs: bug fixing - #63580
966
967 2004/08/19 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
968         * testmbas/WriteOk.vb : Use Mono.GetOptions from VB.NET
969         * Makefile : exercise new option processing in test program [make-run-local target]
970
971 2004-08-26 Bernie Solomon <bernard@ugsolutions.com>
972         * mb-parser.jay: rework parsing of ParamArray parameters
973
974 2004-08-23 Bernie Solomon <bernard@ugsolutions.com>
975         * mb-parser.jay: cope with more varieties of array declarations
976
977 2004-08-20 Anirban Bhattacharjee <banirban@novell.com>
978         * statement.cs: Bug fixing - Prevent AddHandler from getting resolved second time. This is critical for ASP programs with VB.
979
980 2004-08-20 Anirban Bhattacharjee <banirban@novell.com>
981         * expression.cs: Bug fixing - reference to the current type is fixed during BaseAccess resolution
982
983 2004/08/19  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
984         * driver.cs : Some cleanup, also renamed checked option as it was removeintchecks in disguise
985
986 2004-08-18 Anirban Bhattacharjee <banirban@novell.com>
987         * mb-parser.jay: MyBase support in Handles clause e.g. 
988                                 Sub EH() Handles MyBase.E
989
990 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
991         * mb-parser.jay: Trivial fix (#63213)
992
993 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
994         * class.cs:
995         * typemanager.cs:
996                 -Bug fixed to resolve the ReadOnly properties from base class
997                 -Fixed bug in resolving properties from different assembly
998
999 2004-08-14 Bernie Solomon <bernard@ugsolutions.com>
1000         * mb-parser.jay: fix block used as body of For Each
1001
1002 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
1003         * expression.cs: Bug fixing for compiling VB script generated by ASP page - AddressOf operator in a method argument will resolve methods outside assembly
1004
1005 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
1006         * class.cs: bug fixing to get PropertyE.vb test running - search of overridable property in base class was failing
1007
1008 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
1009         * typemanager.cs: Little correction in my last checked-in code - removed unnecessary return value from ExpandAllInterfaces function
1010
1011 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
1012         * class.cs: Trivial bug fixing to get test InterfaceB.vb going
1013
1014 2004-08-13 Rob Tillie <Rob.Tillie@student.tul.edu>
1015         * ecore.cs: added runtime conversion from string to DateTime (fixes test 13329).
1016         
1017 2004-08-13 Anirban Bhattacharjee <banirban@novell.com>
1018         * class.cs:
1019         * typemanager.cs:
1020         * pending.cs:
1021                 Multiple interface inheritance implemented - fix for getting InheritanceD.vb working in bteasts         
1022
1023 2004-08-12 Anirban Bhattacharjee <banirban@novell.com>
1024         * mb-parser.jay: Implements support in Abstract methods
1025
1026 2004-08-12 Anirban Bhattacharjee <banirban@novell.com>
1027         * class.cs: Support for abstract method resolution
1028         * pending.cs: Type of pending_implementations is set to base type
1029                       Changed method names IsInterfaceIndexer and IsInterfaceMethod to IsAbstractIndexer and IsAbstractMethod respectively to make them more meaningful
1030
1031 2004-08-11 Bernie Solomon <bernard@ugsolutions.com>
1032         * mb-parser.jay: first cut at TypeOf ... Is
1033
1034 2004-08-11 Bernie Solomon <bernard@ugsolutions.com>
1035         * expression.cs:
1036         * ecore.cs: More enum changes to handle
1037         implicit conversions better
1038
1039 2004-08-11 Anirban Bhattacharjee <banirban@novell.com>
1040         * mb-parser.jay: Interface inheritance made better
1041
1042 2004-08-09  Jambunathan K  <kjambunathan@novell.com>
1043         * mb-parser.jay: Sanitized parser's generic error message 
1044
1045 2004-08-07 Anirban Bhattacharjee <banirban@novell.com>
1046         * enum.cs: Enum members became enum type now, instead of underlying type
1047
1048 2004-08-07 Bernie Solomon <bernard@ugsolutions.com>
1049         * mb-parser.jay: Implement GetType(x) 
1050         implement Is as equals for the moment so it can be used
1051
1052 2004-08-07 Anirban Bhattacharjee <banirban@novell.com>
1053         * mb-parser.jay: Check for empty enum declaration
1054
1055 2004-08-07 Anirban Bhattacharjee <banirban@novell.com>
1056         * class.cs: 
1057         * mb-parser.jay:
1058                 Multiple Implements for a particular type member got implemented
1059
1060 2004-08-06  Bernie Solomon  <bernard@ugsolutions.com>
1061
1062         * support.cs: Make ReflectionParameter behave
1063         like InternalParameter for byref args.
1064         * expression.cs: Cope with byref args in
1065         an imported DLL
1066
1067 2004-08-06  Jambunathan K  <kjambunathan@novell.com>
1068         * mb-parser.jay: Changed expression grammar so that it now has a
1069           better semblance to those defined in section 11 of VB.NET spec.
1070           The 'expression' rule as it is now could possibly be buggy. So
1071           another iteration is a must.
1072
1073 2004-08-06 Anirban Bhattacharjee <banirban@novell.com>
1074         * mb-parser.jay: Small bug fix in Event grammar
1075
1076 2004-08-06 Anirban Bhattacharjee <banirban@novell.com>
1077         * class.cs: Event still needed to have a constructor which takes value of Implements clause.
1078         * mb-parser.jay: Passing Implements clause value to the constructor
1079
1080 2004-08-06 Anirban Bhattacharjee <banirban@novell.com>
1081         * decl.cs:
1082         * rootcontext.cs:
1083                 Exception number made aligned to VB .net
1084
1085 2004-08-06 Anirban Bhattacharjee <banirban@novell.com>
1086         * class.cs: Improvements in the implementation of Implements clause in Type members
1087
1088 2004-08-05 Anirban Bhattacharjee <banirban@novell.com>
1089         * mb-parser,jay: Implements clause added to Event grammar
1090
1091 2004-08-05 Anirban Bhattacharjee <banirban@novell.com>
1092         * mb-parser.jay: Interface event declaration grammar rewritten
1093
1094 2004-08-04 Anirban Bhattacharjee <banirban@novell.com>
1095         * class.cs: Introduced check for valid interface name in Implements clause. 
1096
1097 2004-08-04  Jambunathan K  <kjambunathan@novell.com>
1098         * mb-tokenizer.cs: 
1099         * mb-parser.jay: 
1100
1101         1) Fixed the Attributes grammar starting with
1102            opt_attributes. Introduced new rules starting with
1103            opt_global_attributes rule - section 5.2 of VB.NET spec
1104
1105         2) Introduced new Tokens that correspond to reserved but unused
1106            VB.NET keywords. Added some comments as appropriate in the
1107            keywords hashtable of tokenizer - section 2.3 of VB.NET spec.
1108
1109         3) Corrected 'imports_term' - section 6.3.1 & 6.3.2 of VB.NET
1110            spec.
1111
1112         4) Introduced opt_argument_list - section 5.2 of VB.NET spec
1113
1114         5) Corrected namespace_declaration - section 6.4.1 of VB.NET spec
1115         
1116
1117 2004-08-04 Anirban Bhattacharjee <banirban@novell.com>
1118         * mb-parser.jay: Added support for modifiers and attributes in interface member grammar
1119
1120 2004-08-04 Anirban Bhattacharjee <banirban@novell.com>
1121         * mb-parser.jay: Property types made optional
1122
1123 2004-08-03 Anirban Bhattacharjee <banirban@novell.com>
1124         * mb-parser.jay: Interface method and property grammar got changed
1125                          Support for multiple implements in class 
1126         * interface.cs: Interface class has got changed
1127                         All other interface types have been removed
1128         * class.cs: Property's Define and CheckBase method changed significantly to be in sync with Interface
1129         * pending.cs: few related changes 
1130         * attribute.cs: few related changes
1131
1132 2004/08/01  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1133         * mb-parser.jay : Some correction as pointed by Jambunathan, 
1134                 to allow preprocessor directives after a label that may 
1135                 leave it orphaned (without a explicit statement)
1136         * testmbas/WriteOK.vb : some vb code to test this case
1137
1138 2004/08/01  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1139         * mb-parser.jay : Some correction as pointed by Jambunathan, 
1140                 to allow intermixing preprocessor directives between 
1141                 the label and it's associated statement
1142
1143 2004-08-02  Jambunathan K  <kjambunathan@novell.com>
1144         * mb-tokenizer.cs: Oops. Also pulled out all of the old
1145         pre-processor code that is no more used.
1146
1147 2004-08-02  Jambunathan K  <kjambunathan@novell.com>
1148         * mb-tokenizer.cs: Fixed a bug where line nos were 
1149         failing to get incremented when the line continuation 
1150         character was appearing by itself on contiguous lines.
1151         
1152         * mb-parser.jay: Fixed the #ExternalSource actions
1153         so that ExternalSourceDirectivesC4.vb compiles and 
1154         reports source & line nos as expected.
1155
1156         * location.cs: Replaced the existing unintuitive, not
1157         so efficient implementation of struct Location {} with 
1158         the one available in mcs with one minor difference: The
1159         number of bits reserved for a file index in the Token
1160         is statically fixed at 8 bits.
1161
1162 2004/08/01  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1163         * mb-parser.jay : Revised patch from João Viegas for the labeled_statement accepting integer literals as labels
1164
1165 2004-07-30  Jambunathan K  <kjambunathan@novell.com>
1166         * mb-parser.jay: Oops. Reversed unintended checkin.
1167         * mb-tokenizer.cs: Added comment in Tokenizer() 
1168         * mb-parser.jay: Fixed miscellaneous bugs in handling of 
1169         pre-processor directives. There are two positive test 
1170         cases that fail currently: ExternalSourceDirectivesC4.vb
1171         and RegionDirectivesC1.vb
1172
1173 2004-07-30  Raja R Harinath  <rharinath@novell.com>
1174
1175         * mb-parser.jay (IfElseStateMachine.State, IfElseStateMachine.Token): 
1176         Remove [Flags] attribute.
1177
1178 2004-07-30  Jambunathan K  <kjambunathan@novell.com>
1179         * mb-parser.jay: 
1180         * mb-tokenizer.cs: Added support for #region, #externalsource
1181         and conditional compilation pre-processor directives.
1182         Conditonal directives currently accept only boolean literals
1183         as conditonal expressions. 
1184         
1185         * mb-parser.jay: The original checkin hits a bug in mcs but
1186         compiles fine with csc. This checkin is to workaround the mcs
1187         bug so that cvs builds are not broken.
1188         
1189         
1190 2004/07/26  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1191         * mb-parser.jay : First try at SyncLock Statement #53230
1192
1193 2004-07-22 Anirban Bhattacharjee <banirban@novell.com>
1194         * argument.cs:
1195         * expression.cs:
1196                 Little betterment in resolution of parameter with Addressof operator in method argument
1197
1198 2004-07-20 Anirban Bhattacharjee <banirban@novell.com>
1199         * expression.cs: Resolution of fully qualified type names - bug fixed
1200
1201 2004-07-20 Anirban Bhattacharjee <banirban@novell.com>
1202         * assign.cs: Added new argument to Expression.ConvertExplicit function call
1203
1204 2004-07-20 Anirban Bhattacharjee <banirban@novell.com>
1205         * expression.cs: Fixed resolution of overloaded functions with delegate as parameter
1206         * ecore.cs: Changes made to stop program getting into an endless loop on not able to cast types of source to destination object.
1207         * statement.cs: Added new argument to Expression.ConvertExplicit function call
1208
1209 2004-07-18 Anirban Bhattacharjee <banirban@novell.com>
1210         * argument.cs: Introduced AddressOf argument type for tracking AddressOf operator in method parameter
1211         * expression.cs: A parameter with AddressOf operator will get converted to Delegate before overload resolution
1212         * 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
1213                 This is a fix for bug #59555
1214
1215 2004/07/15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1216         * driver.cs : Implemented support for -pkg to match mcs (bug #58673)
1217
1218 2004/07/15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1219         * driver.cs : started implementing -pkg support to match mcs (bug #58673), also corrected multiplicity for addmodule option
1220
1221 2004-07-13 Anirban Bhattacharjee <banirban@novell.com>
1222         * driver.cs: Added support for AddModule compiler option
1223         * 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.
1224
1225 2004-07-13 Anirban Bhattacharjee <banirban@novell.com>
1226         * driver.cs: Compilation to module is supported now
1227
1228 2004-07-09 Anirban Bhattacharjee <banirban@novell.com>
1229         * mb-parser.jay:
1230         * class.cs:
1231                 Default modifier for constructor is set to Public
1232
1233 2004-07-09 Anirban Bhattacharjee <banirban@novell.com>
1234         * 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"
1235
1236 2004-07-07 Anirban Bhattacharjee <banirban@novell.com>
1237         * expression.cs: bug fixed - 60399
1238
1239 2004-06-13 Anirban Bhattacharjee <banirban@novell.com>
1240         * mb-parser.jay: Small correction in delegate declaration grammar
1241
1242 2004-06-13 Anirban Bhattacharjee <banirban@novell.com>
1243         * mb-parser.jay: modified RemoveHandler function
1244         * statement.cs: Added RemoveHandler statement class
1245
1246 2004-06-13 Anirban Bhattacharjee <banirban@novell.com>
1247         * mb-parser.jay: Modified grammar for several syntax of AddressOf operator
1248
1249 2004/06/10  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1250         * typemanager.cs : GetPertinentStandardModules receives the array now with params modifier to help usage
1251         * ecore.cs : correcting lookup of semi-qualified standard modules members - A little better but not there yet
1252
1253 2004-06-10 Anirban Bhattacharjee <banirban@novell.com>
1254         * mb-parser.jay: Grammar added for RemoveHandler statement
1255
1256 2004-06-10 Anirban Bhattacharjee <banirban@novell.com>
1257         * mb-parser.jay:
1258         * expression.cs:
1259                 Added support for statement like
1260                         delgate_name = AddressOf sub_name
1261
1262 2004-06-09  Raja R Harinath  <rharinath@novell.com>
1263
1264         * Makefile (HAS_TEST): Remove.
1265         (run-test-local): Move rule to and depend on ...
1266         (run-mbas-test): ... this.
1267
1268 2004-06-08 Anirban Bhattacharjee <banirban@novell.com>
1269         * mb-parser.jay:
1270         * statement.cs:
1271                 Few exception checks for Event
1272
1273 2004-06-07 Anirban Bhattacharjee <banirban@novell.com>
1274         * mb-parser.jay: Resolved the problem in Sub statement with Handles cluse
1275         * class.cs: Added a AddEventHandler function and a EventHandler readonly property. Also modified define of constructor to accommodate Handlers clause.          
1276                     If one initialize a event handler as
1277                         Sub Handler() Handles x.Event
1278                     The handler will be initialized by the constructor of the corresponding class by calling AddHandler.
1279
1280 2004-06-04 Anirban Bhattacharjee <banirban@novell.com>
1281         * mb-parser.jay: Modified WithEvents grammar    
1282
1283 2004-06-04 Anirban Bhattacharjee <banirban@novell.com>
1284         * class.cs: - NotOverridable modifier support added to Property
1285                     - Few overriding related checks put on Property
1286  
1287 2004-06-04 Anirban Bhattacharjee <banirban@novell.com>
1288         * decl.cs: Check for duplicate member name within same container
1289
1290 2004-06-04 Anirban Bhattacharjee <banirban@novell.com>
1291         * class.cs: changed exception number in event grammar
1292
1293 2004-06-03 Anirban Bhattacharjee <banirban@novell.com>
1294         * mb-parser.jay: RaiseEvent grammar fixed to get it working
1295
1296 2004-06-03 Anirban Bhattacharjee <banirban@novell.com>
1297         * driver.cs: fixed bug - 59540
1298
1299 2004-06-01 Anirban Bhattacharjee <banirban@novell.com>
1300         * mb-parser.jay: Improved event declaration grammar
1301
1302 2004/05/31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1303         * AssemblyInfo.cs : Anirban is and author too
1304
1305 2004-05-27 Anirban Bhattacharjee <banirban@novell.com>
1306         * delegate.cs:
1307         * expression.cs:
1308                 Few exception checks for delegete
1309
1310 2004-05-27 Anirban Bhattacharjee <banirban@novell.com>
1311         * mb-parser.jay:
1312         * delegate.cs:
1313                 Few more fixes in delegate grammar              
1314
1315 2004-05-27 Anirban Bhattacharjee <banirban@novell.com>
1316         * mb-parser.jay: Changed Delegate instantiation grammar to get it working
1317
1318 2004-05-26 Anirban Bhattacharjee <banirban@novell.com>
1319         * mb-parser.jay:
1320         * class.cs:
1321                 Few property related checks applied
1322
1323 2004-05-24 Anirban Bhattacharjee <banirban@novell.com>
1324         * class.cs: Check for ReadOnly and WriteOnly modifiers added to property
1325
1326 2004-05-24 Anirban Bhattacharjee <banirban@novell.com>
1327         * mb-paresr.jay: Support for abstruct property is added
1328
1329 2004-05-24  Raja R Harinath  <rharinath@novell.com>
1330
1331         * Makefile (PROGRAM_INSTALL_DIR): Install mbas into
1332         $(prefix)/lib/mono/1.0.
1333
1334 2004-05-10 Anirban Bhattacharjee <banirban@novell.com>
1335         * mb-parser.jay: few Property related grammar changes
1336
1337 2004-05-14 Anirban Bhattacharjee <banirban@novell.com>
1338         * mb-tokenizer.cs: Bug fixed - Got Property working
1339
1340 2004-05-10 Anirban Bhattacharjee <banirban@novell.com>
1341         * mb-parser.jay: Support added for attaching Attributes in methods
1342
1343 2004/04/07  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1344         * AssemblyInfo.cs : Correcting information and version number
1345
1346 2004-04-29 Anirban Bhattacharjee <banirban@novell.com>
1347         * enum.cs: bug fixing - setting one enum member to another
1348
1349 2004-04-29 Anirban Bhattacharjee <banirban@novell.com>
1350         * enum.cs:
1351         * expression.cs:
1352                 Implemented check for access modifier in enum
1353
1354 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
1355
1356         * typemanager.cs: Property.GetGetMethod() does not return the method if it
1357         is private (it did until now because of a bug). Make sure it works as it 
1358         worked before the fix.
1359
1360 2004-04-28 Anirban Bhattacharjee <banirban@novell.com>
1361         * expression.cs: fixed bug to get enum running
1362         * enum.cs: handling several negative scenarios 
1363                    Changed several exception numbers
1364         * assign.cs: Changed exception number
1365
1366 2004-04-26  Jackson Harper  <jackson@ximian.com>
1367
1368         * Makefile: Get libs from default profile directory.
1369         
1370 2004-04-23 Anirban Bhattacharjee <banirban@novell.com>
1371         * mb-parser.jay: Grammar changes for array
1372         * expression.cs: exception number changed for "Incorrectly structured array initializer" exception
1373
1374 2004-04-17 Anirban Bhattacharjee <banirban@novell.com>
1375         * mb-parser.jay:
1376         * class.cs:
1377         * const.cs
1378                 a little better structure grammar
1379
1380 2004-04-16 Anirban Bhattacharjee <banirban@novell.com>
1381         * mb-parser.jay: few clean-ups
1382
1383 2004-04-16 Anirban Bhattacharjee <banirban@novell.com>
1384         * class.cs: Duplicate entry point exception number changed
1385                     Checked delaration of Types, fields, methods as Protected if they are member of Module type
1386         * const.cs: Checked delaration of constructor as Protected if it is member of Module type
1387         * driver.cs: exception number is changed for "Entry point does not exist" exception
1388
1389 2004-04-15 Anirban Bhattacharjee <banirban@novell.com>
1390         * mb-parser.jay: Classes can't be delared static impicitly as other module members
1391
1392 2004-04-15 Anirban Bhattacharjee <banirban@novell.com>
1393         * class.cs: Couple of bug fixes in defining default static constructor, partially imposed by the fix earlier
1394
1395 2004-04-14 Anirban Bhattacharjee <banirban@novell.com>
1396         * class.cs: Added support for Shadows modifier in Variables
1397
1398 2004-04-14 Anirban Bhattacharjee <banirban@novell.com>
1399         * const.cs: Added support for Shadows modifier in constant
1400
1401 2004-04-14 Anirban Bhattacharjee <banirban@novell.com>
1402         * expression.cs: Removed the check which was stoping type instances to access the shared variables
1403
1404 2004-04-14 Anirban Bhattacharjee <banirban@novell.com>
1405         * modifiers.cs: changed exception number for invalid modifiers exception
1406
1407 2004-04-13 Anirban Bhattacharjee <banirban@novell.com>
1408         * mb-parser.jay: Removed 'static_constructor_declaration' - this is not required as 'constructor_declaration' implementation is good enough to handle static constructors too
1409         * class.cs: Handling couple of negative scenarios related to static constructors and bug fixes
1410
1411 2004-04-13 Anirban Bhattacharjee <banirban@novell.com>
1412         * class.cs: Couple of negative scenario handling
1413
1414 2004-04-13 Anirban Bhattacharjee <banirban@novell.com>
1415         * mb-parser.jay: Few clean-up
1416
1417 2004-04-12 Anirban Bhattacharjee <banirban@novell.com>
1418         * mb-parser.jay: Bug fixed - Base class ctor was getting called twice when called explicitly from the derived class ctor as MyBase.New
1419
1420 2004-04-12 Anirban Bhattacharjee <banirban@novell.com>
1421         * mb-parser.jay: Fixed bugs for calling ctor from another ctor in the same class by using statments like
1422                 Me.New 
1423                 or 
1424                 MyClass.New
1425
1426 2004/04/07  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1427         * mb-tokenizer.cs : Better error message when dealing with date literals
1428
1429 2004-04-06 Anirban Bhattacharjee <banirban@novell.com>
1430         * class.cs:
1431         * ecore.cs:
1432         * expression.cs:
1433         * modifiers.cs:
1434         Changed/added serveral Accessibility related expections 
1435
1436 2004-04-05 Anirban Bhattacharjee <banirban@novell.com>
1437         * class.cs:
1438         * decl.cs:
1439         * expression.cs:
1440         * pending.cs: 
1441         Several error messages and numbers are changed in all the above four classes
1442
1443 2004-04-04 AnirbanBhattacharjee <banirban@novell.com>
1444         * delegate.cs: changed default access modifier
1445         * enum.cs: changed default access modifier
1446         * interface.cs: changed default access modifier
1447         * modifiers.cs: extension of bug fixed for getting NotOverridable modifier working for methods
1448
1449 2004-04-04 AnirbanBhattacharjee <banirban@novell.com>
1450         * class.cs: Changed exception messages and their numbers to align better with VB
1451                     Changed default access modifier of method to Public
1452                     Bug fixed to get NotOverridable modifier working
1453         * decl.cs:  Changed exception messages and numbers
1454
1455 2004-03-25 Anirban Bhattacharjee <banirban@novell.com>
1456         * class.cs: bug fixing - creating default constructor when no constructor is specified
1457         Few modifiers are changed to align with Vb
1458
1459 2004/03/22  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1460         * typemanager.cs :  being more carefull with null arguments in some places, 
1461                                                 null checking in GetPertinentStandardModules() loop
1462         * namespace.cs : a helper ToString override 
1463         * ecore.cs : Dealing with finding more than a pertinent standard module having a global member
1464         * testmbas/WriteOk.vb : Exercising correct standard module resolution
1465     NOTE: Almost there for Bug #52067 - just the semi-qualified case isn't working 
1466
1467 2004-03-23 Anirban Bhattacharjee <banirban@novell.com>
1468         * mb-parser.jay: handled implicit static modifier for module members in const
1469         * const.cs: changed supported modifiers
1470
1471 2004-03-23 Anirban Bhattacharjee <banirban@novell.com>
1472         * modifiers.cs: Return name of the modifiers' changed to vb specific
1473
1474 2004/03/22  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1475         * ecore.cs : now it gets the correct list of namespaces in scope (either imported or current) Almost there for Bug #52067 
1476
1477 2004-03-22 Anirban Bhattacharjee <banirban@novell.com>
1478         * mb-parser.jay: One more negative scenario is addressed in const grammar
1479
1480 2004-03-22 Anirban Bhattacharjee <banirban@novell.com>
1481         * const.cs: Change type of constant to the type of its value if no explicit type declaration found
1482
1483 2004-03-22 Anirban Bhattacharjee <banirban@novell.com>
1484         * mb-parser.jay: Grammar for declaring constant inside block is changed
1485
1486 2004-03-22 Anirban Bhattacharjee <banirban@novell.com>
1487         * const.cs: Changed exception numbers
1488
1489 2004-03-22 Anirban Bhattacharjee <banirban@novell.com>
1490         * mb-parser.jay: Changed grammar for constant
1491
1492 2004/03/02  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1493         * mb-tokenizer.cs : handling better linebreak, specially when delaing with literals and preprocessing directives 
1494
1495 2004-03-16 Anirban Bhattacharjee <banirban@novell.com>
1496         * mb-parser.jay: 
1497                 - changed variable declaration grammar and added support for multiple variables declartion under single type e.g. dim x, y as integer
1498                 - added few exception checks in variables
1499                 - added one exception check in property
1500         
1501 2004/03/02  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1502         * sourcebeingcompiled.cs : new source/class to hold things previously contained in namespaces.cs 
1503                         because in C# they were semantically tied to nested namespaces, and in VB.NET 
1504                         they can occur only once per file.
1505         * mbas.exe.sources: added sourcebeingcompiled.cs
1506         * mb-parser.jay: reference RootContext.Sourcebeingcompiled things
1507         * namespace.cs: move pieces to sourcebeingcompiled
1508         * rootcontext.cs: use SourceBeingCompiled class
1509         * decl.cs: reference RootContext.Sourcebeingcompiled things
1510
1511 2004-03-02 Anirban Bhattacharjee <banirban@novell.com>
1512         * mb-tokenizer.cs: Support for '-' delimiter in DateTime
1513
1514 2004-03-02 Anirban Bhattacharjee <banirban@novell.com>
1515         * report.cs: Formatted warning thrown
1516
1517 2004-03-02 Anirban Bhattacharjee <banirban@novell.com>
1518
1519         * class.cs
1520         * decl.cs
1521         * modifiers.cs
1522         * mb-parser.jay
1523         Added Overloads and Shadows modifiers to Function and Sub
1524         Fixed few other modifier related problems in Function and Sub
1525
1526 2004-01-07  Nick Drochak <ndrochak@ieee.org>
1527
1528         * genericparser.cs:
1529         * mb-tokenizer.cs: 
1530         * row.cs: Eliminate warnings about unused variables.
1531
1532 2004/01/06  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1533         * typemanager.cs :      correcting translation of System types to language types, 
1534                         also temporarily circunventing a exception in ModuleBuilder.GetType inside LookupTypeReflection,
1535                         corrected many ` characters to ' in error messages
1536         * testmbas/WriteOK.vb : testing newly implemented IsNumeric global function
1537
1538 2004-01-04  David Sheldon <dave-mono@earth.li>
1539
1540   * expression.cs: Added matching ")" to error message for 
1541   CS0077
1542
1543 2003/12/23  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1544         * driver.cs : added stubs for options "/netcf /sdkpath:path"
1545         * namespace.cs, decl.cs, rootcontext.cs : use hashtable to avoid duplicate importation of namespaces 
1546           (especially between command-line option /imports and explicit Import clauses), what manifested itself as
1547           error messages for ambiguous names that where in truth identical
1548         * statement.cs : trying to fix the 'exit' statement DoEmit, for "Exit Sub"
1549         * mb-parser.jay, mb-tokenizer.cs : initial support for type_characters (dim az$ = dim az as string)
1550
1551 2003/12/18  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1552         * class.cs : case-sensitiveness when tracking the entry-point removed
1553         * driver.cs : IsSWFApp would try to pass a null 'mainclass' to the hashtable indexer, throwing an exception
1554                 (even for correct programs because of the bug above). Now this condition is tested before
1555
1556 2003/12/06  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1557         * ecore.cs : problems trying to implicit convert OMITTED arguments, solved
1558         * mb-tokenizer.cs, mb-parser.jay, typemanager.cs : support for the date primitive type and date literals
1559         * testmbas/WriteOK.vb: testing date type and date literal
1560
1561 2003/11/12  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1562         * driver.cs : /imports option now is implemented
1563         * mb-parser.jay: support for pre-imported namespaces (the default Microsoft.VisualBasic and those from /imports)
1564         
1565 2003/11/12  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1566         * mb-tokenizer.cs : integer literal (Hex starts with &H not 0x), handle Octal literals (&O)
1567         *       handle unicode specialized double-quotes in string literals     
1568         *       corrected some mishandling of conversions in numeric literals
1569         *       implemented support for char literals ("z"c)
1570         * Makefile : verbose target uses verbose argument
1571         * testmbas/WriteOK.vb: many tests for literals implemented
1572         * literal.cs: correcting lack of a ShortLiteral class
1573         * mb-parser.jay: removed support for unsigned int literals, added support for short int literals
1574         
1575 2003/11/10  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1576         * *.cs, mb-parser.jay: Switched all from defining/using namespace Mono.CSharp to Mono.MonoBASIC 
1577         * location.cs: SymbolDocument now returns a SymbolDocumentWriter using the right (SymLanguageType.Basic) GUID
1578         
1579 2003/10/17  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1580         * genericparser.cs: 
1581             Don't print exception when a file is not found to be parsed
1582                 File extensions not matched are now processed with the default parser
1583                 Better handle file/directory not found exceptions, and use Report.Error in that case
1584         * added defaultparserattribute.cs
1585         * mb-parser.jay : Mono.MonoBASIC.Parser is now the [DefaultParser]
1586         * location.cs version 1.4 recovered (Marco Ridoni had it overwritten with an older version)
1587         * mb-tokenizer.cs, rootcontext.cs, tree.cs: Location constructor needs column number now
1588
1589 2003/09/17  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1590         * .cvsignore: WHOOPS
1591
1592 2003/09/17  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1593         * .cvsignore: some more files to ignore
1594
1595 2003/09/17  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1596         * mb-tokenizer.cs, driver.cs: Back to Linux line-endings, SORRY
1597
1598 2003/09/16  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1599         * Makefile: corrected testing in Windows/Cygwin (from mbas.exe to ./mbas.exe), because it was getting the installed compiler instead of the compiled one
1600         * mb-tokenizer.cs: Redoing: Preprocessor directives must be case-insensitive (many .ToLower() used)
1601         * driver.cs: No more 'linkpaths' option, use 'libpath' instead
1602
1603 2003/09/15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1604         * driver.cs: Corrected handling of FileNotFoundException in LoadAssembly(), according to Bernie Solomon's patch
1605
1606 2003/08/13  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1607         * mb-parser.jay: ReDim statement parses many variables now (but initializers aren't allowed)
1608                                          Erase statement implemented
1609                                          Lots of garbage (never reduced rules) deleted
1610                                          Reduce/Reduce problems eliminated (where due to having opt_modifiers duplicated inside property_declaration rule)
1611         * statement.cs : class Redim is prepared to have ReDim Preserve copying code called,
1612                                          but we need to check if that code is lying in Microsoft.VisualBasic.dll
1613                                          New class Erase
1614
1615 2003-07-26  Ben Maurer  <bmaurer@users.sourceforge.net>
1616         
1617         * statement.cs: Make Math.XXX System.Math.XXX, to fix the build.
1618         
1619 2003-07-20  Peter Williams  <peter@newton.cx>
1620
1621         * Makefile: Remove the test target which conflicted with
1622         the global target. (Change confirmed with Rafael.)
1623
1624 2003-04-02  Duncan Mak  <duncan@ximian.com>
1625
1626         * mb-parser.jay: Temporarily remove the references to
1627         Class.MustOverride to fix the build.
1628
1629 2003/03/29  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1630         * mb-parser.jay: corrected some module related rules
1631         * location.cs : now handles column information
1632         
1633 2003/03/11  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1634         * makefile.gnu : use $RUNTIME for all targets
1635                                          actually run the compiled program on 'test-gtk' target 
1636         * mb-tokenizer.cs : no escaping of chars allowed in VB.NET (old mcs code removed)
1637                                                 handle doubled-doublequotes (VB idiom to escape a doublequote) 
1638         
1639 2003/03/04  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1640         * mb-parser.jay: added rule for Imports with alias
1641         * mb-parser.jay: Friend (internal) modifier was missing,
1642                                          Shared modifier was expecting Static token erroneously
1643                                          Modules must accept only a static constructor rule added
1644                                          Constant declaration rule added
1645         * makefile & makefile.gnu : actually run the compiled program on test target 
1646
1647 2003/03/03  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1648         * mb-tokenizer.cs : new semi-keywords: Compare, Explicit, Strict, On, Off, Binary, Text
1649         * mb-parser.jay: tokens for above semi-keywords, and rules for option directives
1650         * driver.cs: integrates command line options with parser flags for option directives
1651         * makefile & makefile.gnu : added 'verbose' target that uses --verbose switch to compile 
1652           the test source and pipes it through 'less', also added a Extended Syntax source
1653
1654 2003/02/22  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1655         * class.cs : As, per vbc, there is a rootnamespace now, --main wasn't working anymore, 
1656                                  because it was expecting a fully qualified class name. 
1657                                  We now also test the name passed prepended by the rootnamespace.
1658         * class.cs : Corrected warning "The keyword new is required on `Mono.CSharp.Property.Emit'
1659                                  because it hides inherited member `PropertyBase.Emit'", by making it virtual
1660                                  in PropertyBase and override in Property.
1661         * makefile.gnu : test and test-gtk targets now depend on mbas.exe
1662                                  
1663
1664 2003/02/19  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1665         * mb-parser.jay : eliminated reduce/reduce conflict on duplicated rank_specifier rule
1666           by renaming the one using brackets to bracketed_rank_specifier
1667
1668 2003/02/12  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1669         * added argument.cs (extracted from expression.cs) makefiles corrected
1670         * mb-parser.jay : eliminated reduce/reduce conflict on opt_argument_list rule, 
1671           by putting and if to make a argument list with just an empty argument list become an empty list
1672
1673 2003/02/03  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1674         * rootcontext.cs : added RootNamespace member
1675         * mb-parser.jay : use RootContext.RootNamespace to initialize outermost namespace
1676         * driver.cs : 
1677                 - implement rootnamespace parameter, and defaults it to the output file name
1678                 - like vbc if no source file name is provided just show help
1679
1680 2003/01/22  Nick Drochak <ndrochak@gol.com>
1681         * makefile: Use csc compiler in here. makefile.gnu assumes mono/mcs
1682
1683 2003-01-13  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1684         * added cleanup method to tokenizer as needed but modifications made in jay
1685
1686 2003-01-12  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1687         * changed test target in makefile work
1688         * corrected authors list to include Marco
1689
1690 2002-10-23  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1691         * merged many sources from mcs/mcs, to resync
1692
1693 2002-10-20  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1694         * using Mono.GetOptions preliminar support for response files, 
1695           changed the makefile target 'test' for use o response file testmbas/filelist
1696
1697 2002-10-20  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1698         * merged many sources from mcs/mcs, to resync
1699
1700 2002-10-05  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1701         * merged many sources from mcs/mcs, to resync
1702
1703 2002-08-31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1704         * merged many sources from mcs/mcs, to resync
1705
1706 2002-09-03  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1707         * integrated new version of Mono.GetOptions (reflection/attributes-based)
1708
1709 2002-08-31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1710         * merged expression.cs from mcs/mcs, to resync
1711
1712 2002-08-29  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1713         * merged assign.cs, attribute.cs, class.cs, codegen.cs, const.cs, decl.cs, delegate.cs, ecore.cs, enum.cs,
1714         expression.cs, interface.cs, pending.cs, report.cs, rootcontext.cs, statement.cs, support.cs and 
1715         typemanager.cs from mcs/mcs, to resync
1716
1717 2002-08-06  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1718         * added "test" target to makefile
1719         * merged assign.cs, attribute.cs, cfold.cs, class.cs, codegen.cs, const.cs, constant.cs, 
1720           decl.cs, delegate.cs, ecore.cs, enum.cs, expression.cs, interface.cs, modifiers.cs, parameter.cs, 
1721           pending.cs, report.cs, rootcontext.cs, statement.cs, support.cs and typemanager.cs from mcs/mcs, to resync
1722
1723 2002-07-14  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1724         * merged assign.cs, class.cs, ecore.cs, expression.cs, statement.cs and typemanager from mcs/mcs, to resync
1725
1726 2002-07-09  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1727         * merged attribute.cs, ecore.cs, namespace.cs and statement.cs from mcs/mcs, to resync
1728
1729 2002-07-06  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1730         * merged attribute.cs, class.cs, codegen.cs, ecore.cs, expression.cs, 
1731           modifiers.cs, namespace.cs, report.cs, rootcontext.cs, statement.cs and typemanager.cs from mcs/mcs, to resync
1732         * changed driver.cs to follow mcs lead on error/warning counting and reporting
1733
1734 2002-06-23  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1735         * merged attribute.cs, class.cs, ecore.cs, rootcontext.cs, support.cs and typemanager.cs from mcs/mcs, to resync
1736         * makefile makes csc reference a copy of Mono.GetOptions.dll (mbas.sln now compiles to mbas dir instead of mbas/bin/Debug)
1737
1738 2002-06-21  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1739         * merged attribute.cs, class.cs, interface.cs, expression.cs, ecore.cs, 
1740           modifiers.cs, rootcontext.cs, statement.cs and typemanager.cs from mcs/mcs, to resync
1741         * added pending.cs from mcs/mcs, to resync
1742
1743 2002-06-15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1744         * merged assign.cs, attribute.cs, enum.cs and namespace.cs from mcs/mcs, to resync
1745         * namespace.cs needed some fixing, because CSharpParser isn?t available
1746
1747 2002-06-15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1748         * merged delegate.cs, ecore.cs, typemanager.cs and rootcontext.cs from mcs/mcs, to resolve expression.cs blues
1749
1750 2002-06-15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1751         * oops merged expression.cs from mcs/mcs is breaking my make
1752         * driver.cs, assemblyinfo.cs wasn?t ready for prime time (offending lines were commented out)
1753
1754 2002-06-15  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1755         * merged expression.cs from mcs/mcs
1756
1757 2002-06-12  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1758         * corrected Module.TypeAttr property getter in module.cs
1759         
1760 2002-06-12  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1761         * merged typemanager.cs from mcs/mcs
1762
1763 2002-06-10  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1764         * merged expression.cs and interface.cs from mcs/mcs
1765
1766 2002-06-09  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1767         * merged const.cs, enum.cs, expression.cs and typemanager.cs from mcs/mcs
1768     * comments on module.cs
1769
1770 2002-06-07  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1771         * merged class.cs, attribute.cs from mcs/mcs
1772
1773 2002-06-07  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1774         * merged class.cs, enum.cs, expression.cs, interface.cs, rootcontext.cs and typemanager.cs from mcs/mcs
1775         * added module.cs (class Mono.MonoBASIC.Module - derived from Mono.CSharp.Class)
1776         * added System.XML and Microsoft.VisualBasic to the default config (driver.cs)
1777         
1778 2002-06-07  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1779         * merged class.cs and ecore.cs from mcs/mcs
1780
1781 2002-06-02  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1782         * copied methods MakeName and CheckDef from mcs\cs-parser.jay to GenericParser.cs 
1783           where they are inherited by mb-parser.jay/cs
1784         * put some code on the Module rule in mb-parser.jay to at least generate a class in the assembly,
1785           if I jump over the entry-point check code, while debugging
1786         
1787 2002-05-31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1788         * class Mono.MonoBASIC.Tokenizer now handles 
1789                 - all valid line-terminators (CR, LF, CRLF, LS and PS)
1790                 - escaped identifiers (like [Integer])
1791                 - old-fashioned comments syntax (REM Blah-Blah)
1792
1793 2002-05-31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1794         * modified mbas.ico to be a small version of mono?s logo (see mcs\MonoIcon.png)
1795
1796 2002-05-31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1797         * squashed some reduce/reduce conflicts out of mb-parser.jay
1798
1799 2002-05-31  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1800         * merged codegen.cs from mcs
1801         * altered Driver.cs to work with new codegen.cs
1802
1803 2002-05-27  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
1804
1805         * merged all I could from mcs source files into mbas
1806         * added VS.NET Solution and Project Files for mbas
1807         * added icon file and a vb-sources-filled testmbas directory
1808         * started this ChangeLog