This should fix #76928. This fix incorporates ideas from a patch
[mono.git] / mcs / class / System / Microsoft.CSharp / ChangeLog
1 2005-12-07  Gert Driesen  <drieseng@users.sourceforge.net>
2
3         * CSharpCodeGenerator.cs: Override GeneratePrimitiveExpression to
4         match .NET 1.x and 2.0 for float, decimal, char, ushort, uint, ulong
5         and sbyte.
6
7 2005-11-30  Gert Driesen  <drieseng@users.sourceforge.net>
8
9         * CSharpCodeGenerator.cs: No longer output semicolon and newline for
10         CodeVariableDeclarationStatement in for statement, fixes #75292. 
11         Fixed NRE in GenerateEventReferenceExpression. Cosmetic changes to 
12         code generated for iteration to match MS.NET. Temporary reduce 
13         indentation for label and no longer escape label if its a keyword.
14
15 2005-11-26  Gert Driesen  <drieseng@users.sourceforge.net>
16
17         * CSharpCodeGenerator.cs: Fixed GenerateComment to also write
18         comment chars for carriage-return (and skip linefeed, if its the
19         next character). Fixed output for TryCatchFinallyStatement. Fixed
20         GotoStatement to end with newline.
21
22 2005-11-04  Gert Driesen  <drieseng@users.sourceforge.net>
23
24         * CSharpCodeGenerator.cs: Ignore ChecksumData of CodeChecksumPragma
25         if null.
26
27 2005-10-29  Sebastien Pouliot  <sebastien@ximian.com>
28
29         * CSharpCodeProvider.cs: GenerateCodeFromMember method is an override 
30         in 2.0 final.
31
32 2005-10-28  Gert Driesen  <drieseng@users.sourceforge.net>
33
34         * CSharpCodeGenerator.cs: Use fixed signature for entrypoint method
35         on 1.0 profile. On 2.0 profile output custom attributes, and return
36         type. On 1.0 profile, also replace + with dot (for nested types).
37         Fixes bug #76580. Set eol-style to native.
38         * CSharpCodeCompiler.cs: Set eol-style to native.
39         * CSharpCodeProvider.cs: Set eol-style to native.
40
41 2005-10-19  Miguel de Icaza  <miguel@novell.com>
42
43         * CSharpCodeCompiler.cs: Quote the directory, to fix #76469
44
45 2005-10-17  Sebastien Pouliot  <sebastien@ximian.com>
46
47         * CSharpCodeProvider.cs: Added a LinkDemand and an InheritanceDemand
48         for FullTrust (i.e. Unrestricted permission set) at the class level.
49         Added [Obsolete] on CreateCompiler and CreateGenerator methods (2.0).
50         Stubbed new method GenerateCodeFromMember (2.0).
51
52 2005-10-15 Gert Driesen <drieseng@users.sourceforge.net>
53         
54         * CSharpCodeGenerator.cs: Support C bracing style. Fixes bug #76286.
55
56 2005-10-07 Gert Driesen <drieseng@users.sourceforge.net>
57
58         * CSharpCodeGenerator.cs: Fixed supported for type arguments in
59         GetTypeOutput on 2.0 profile. Partial fix for bug #76286.
60
61 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
62
63         * CSharpCodeCompiler.cs: patch from Maksim Vorobiev that prevents
64         InvalidOperationException if the thread running mcs is aborted.
65
66 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
67
68         * CSharpCodeCompiler.cs: made the colon optional so that both mcs and
69         gmcs work.
70
71 2005-08-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
72
73         * CSharpCodeCompiler.cs: added missing colon after the line,column
74         parenthesis in the regex that parses the errors to make this work with
75         HEAD mcs.
76
77 2005-07-30 Gert Driesen <drieseng@users.sourceforge.net>
78
79         * CSharpCodeGenerator.cs: Fixed code generated for NewSlot members.
80
81 2005-07-24 Gert Driesen <drieseng@users.sourceforge.net>
82
83         * CSharpCodeGenerator.cs: Fixed generated code for enums, interfaces
84         and delegates to match MS.NET.
85
86 2005-07-02 Gert Driesen <drieseng@users.sourceforge.net>
87
88         * CSharpCodeGenerator.cs: Fixed output of ReturnTypeCustomAttributes.
89
90 2005-07-02 Gert Driesen <drieseng@users.sourceforge.net>
91
92         * CSharpCodeGenerator.cs: Added PrivateImplementationType support
93         for events, properties, methods. No longer output scope modifier
94         for events.
95
96 2005-06-30 Gert Driesen <drieseng@users.sourceforge.net>
97
98         * CSharpCodeGenerator.cs: Only consider property an indexer if
99         name is Item (case-insensitive comparison) and property has
100         parameters.
101
102 2005-06-28 Gert Driesen <drieseng@users.sourceforge.net>
103
104         * CSharpCodeGenerator.cs: Fixed GetTypeOutput to match MS.NET 1.x
105         and 2.0.        
106
107 2005-06-26 Gert Driesen <drieseng@users.sourceforge.net>
108
109         * CSharpCodeGenerator.cs: Fixed generated code for events, fields,
110         properties, methods and ctors to match MS.NET.
111
112 2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
113
114         * CSharpCodeGenerator.cs: Also modified generated code for type-level
115         attributes to match MS.NET.
116
117 2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
118
119         * CSharpCodeGenerator.cs: Fixed generated code for assembly-level
120         attributes to match code generated by MS.NET.
121
122 2005-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
123
124         * CSharpCodeCompiler.cs: use UTF8 in the StreamWriter, as it did before
125         r45802 removed it accidentally. Fixes bug #75361.
126
127 2005-06-12  Gert Driesen <drieseng@users.sourceforge.net>
128
129         * CSharpCodeCompiler.cs: Temp source files should have extension
130         ".cs".
131
132 2005-06-11  Gert Driesen <drieseng@users.sourceforge.net>
133
134         * CSharpCodeGenerator.cs: Win32 resources are supported. Fixes bug
135         #75218.
136         * CSharpCodeCompiler.cs: Clean up temporary files after compilation. 
137         Fixes bug #75221. Added support for Win32 resources. Fixes bug
138         #75218.
139
140 2005-05-29  Gert Driesen <drieseng@users.sourceforge.net>
141
142         * CSharpCodeCompiler.cs: Load compiled assembly from byte array
143         if GenerateInMemory compiler parameter is set, set PathToAssembly
144         if compilation succeeded and GenerateInMemory is false.
145         Fixes bug #74959.
146
147 2005-04-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
148
149         * CSharpCodeCompiler.cs: fix problem with the output CS8028.
150
151 2005-02-03  Atsushi Enomoto  <atsushi@ximian.com>
152
153         * CSharpCodeCompiler.cs : On windows, use gmcs under 2.0 profile too.
154
155 2005-01-19  Jonathan Pryor  <jonpryor@vt.edu>
156
157         * CSharpCodeGenerator.cs: Remove extra ' ' emitted after class name in 
158           GenerateTypeStart().  This removes a regression test failure in
159           MonoTests.Microsoft.CSharp.CodeGeneratorFromTypeTest.DefaultTypeTest.
160
161 2005-01-12  Lluis Sanchez Gual  <lluis@novell.com>
162
163         * CSharpCodeGenerator.cs: Avoid keywords when writing enum members.
164         Removed the GetSafeTypeName method. It was a wrong bug fix. Type names
165         are expected to always use the full name form, never the alias.
166
167 2004-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
168
169         * CSharpCodeCompiler.cs: ignore the 'BETA SOFTWARE blah' from gmcs.
170         Use stderr to get the errors/warnings instead of stdout. Removed
171         obsolete lines from CreateErrorFromString.
172
173 2004-10-02 Marek Safar <marek.safar@seznam.cz>
174
175         * CSharpCodeCompiler.cs: Fix #65722.
176
177 2004-09-14 Marek Safar <marek.safar@seznam.cz>
178
179         * CSharpCodeGenerator.cs: Fix #65854.
180
181 2004-09-08  Lluis Sanchez Gual  <lluis@novell.com>
182
183         * CSharpCodeGenerator.cs: Reverted change in GenerateArrayCreateExpression.
184         It was causing regressions.
185
186 2004-09-06 Marek Safar <marek.safar@seznam.cz>
187
188         * CSharpCodeGenerator.cs: Implemented NET_2_0 extensions
189         
190 2004-09-01 Marek Safar <marek.safar@seznam.cz>
191
192         * CSharpCodeGenerator.cs : New private member dont_write_semicolon.
193         Used for one row "for" syntax.
194         (GenerateEvent): Added attributes output.
195         (GenerateField): Don't output access and scope modifier for enum field.
196         (GenerateConstructor): Added attributes output.
197         (QuoteSnippetString): Fixed mixed case type conversion. Replace '+'
198         with '.' for nested classes.
199
200 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
201
202         * CSharpCodeCompiler.cs: Hack to make code generation work in 2.0.
203
204 2004-07-13  Peter Williams  <peter@newton.cx>
205
206         * CSharpCodeCompiler.cs (CompileAssemblyFromDomBatch): Include
207         counter in the extension so that batch compilations work.
208         (CompileAssemblyFromSourceBatch): Same.
209
210 2004-07-12  Fawad Halim <fawad@fawad.net>
211
212         * CSharpCodeGenerator.cs : Have GenerateField generate field sans the type for enums.
213
214 2004-06-28  Atsushi Enomoto  <atsushi@ximian.com>
215
216         * CSharpCodeCompiler.cs : (only for windows) First check mcs.bat, then
217           check mcs.exe. It enables xsp working with mono windows installer.
218
219 2004-06-24  Atsushi Enomoto  <atsushi@ximian.com>
220
221         * CSharpCodeCompiler.cs : On windows we use fixed mono.exe and mcs.exe
222           located by mscorlib.dll.
223
224 2004-06-23  Jackson Harper  <jackson@ximian.com>
225
226         * CSharpCodeGenerator.cs (GenerateLabeledStatement): Append a ": "
227         to the statement name. Make sure the statement isn't null before
228         writing. Patch by Alex Yakunin.
229         
230 2004-06-22  Atsushi Enomoto  <atsushi@ximian.com>
231
232         * CSharpCodeGenerator.cs :
233           Check null argument in CreateValidIdentifier().
234
235 2004-06-21  Atsushi Enomoto  <atsushi@ximian.com>
236
237         * CSharpCodeGenerator.cs : Fix for tests. Check type names in
238           CreateValidIdentifier. Implemented IsValidIdentifier.
239
240 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
241
242         * CSharpCodeCompiler.cs: let the TempFileCollection handle the removal
243         of the files if needed.
244
245 2004-04-26  Atsushi Enomoto  <atsushi@ximian.com>
246
247         * CSharpCodeGenerator.cs : implemented GenerateEvent.
248           Delegate was output as usual class.
249
250 2004-03-29  Lluis Sanchez Gual  <lluis@ximian.com>
251
252         * CSharpCodeGenerator.cs: In GetTypeOutput, never escape runtime type names.
253         Created a new method GetSafeTypeName to support this.
254
255 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
256
257         * CSharpCodeGenerator.cs: patch from Jaroslaw Kowalski that fixes
258         CodeMethodReturnStatement(). Closes bug #54934.
259
260 2004-02-27  Jaroslaw Kowalski <jaak@zd.com.pl>
261  
262         * CSharpCodeGenerator.cs: fixed static property references
263         in GeneratePropertyReferenceExpression
264  
265 2004-02-10  Jackson Harper <jackson@ximian.com>
266
267         * CSharpCodeCompiler.cs: Use the temp files collection for
268         creating temp files.
269         
270 2004-02-04  Jackson Harper <jackson@ximian.com>
271
272         * CSharpCodeGenerator.cs: Don't write ToThrow statement if it is
273         null (matches MS output). When creating comments there is a space
274         after the first // but not the following lines.
275         
276 2004-01-21  Atsushi Enomoto <atsushi@ximian.com>
277
278         * CSharpCodeGenerator.cs: Implemented CreateEscapedIdentifier() and
279           CreateValidIdentifier().
280
281 2004-01-19  Lluis Sanchez Gual <lluis@ximian.com>
282
283         * CSharpCodeGenerator.cs: Do not generate access and scope modifiers for
284         interface methods.
285
286 2004-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
287
288         * CSharpCodeCompiler.cs: when generating files from DOM, set the
289         encoding to UTF-8 with BOM marker. Fixes bug #52604.
290
291 2003-11-12  Lluis Sanchez Gual <lluis@ximian.com>
292
293         * CSharpCodeCompiler.cs: In BuildArgs, add "--" separator between
294         options and source files.
295
296 2003-10-15  Lluis Sanchez Gual <lluis@ximian.com>
297
298         * CSharpCodeGenerator.cs: added override for the method 
299           GenerateParameterDeclarationExpression. The parameter must be
300           generated with a safe C# name.
301         
302 2003-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
303
304         * CSharpCodeCompiler.cs: don't leave temporary files around.
305
306 2003-09-04  Lluis Sanchez Gual <lluis@ximian.com>
307
308         * CSharpCodeGenerator.cs: Fixed generation of array construction with
309         initializers. Render return type custom attributes.
310
311 2003-08-15  Jaroslaw Kowalski <jarek@atm.com.pl>
312
313         * CSharpCodeGenerator.cs:
314         
315           - fixed support for method references where target
316                 object is null
317           - fixed CodeThrowExceptionStatement
318           - disabled member access modifiers for private method
319             implementations
320           - disabled generation of empty method body for interface
321             declarations
322           - disabled generation of empty property accessor bodies
323             in interface declarations
324           - added support for indexers (properties named "Item")
325           - added support for chained constructor arguments and
326             base constructor arguments
327
328 2003-08-05  Lluis Sanchez Gual <lluis@ximian.com>
329
330         * CSharpCodeGenerator.cs: Added method GetSafeName() that checks if
331           a given id is a C# keyword, and returns the same if if it is not,
332           or @id if it is a keyword. This method is used everywhere
333           a name is rendered.
334
335 2003-08-05  Lluis Sanchez Gual <lluis@ximian.com>
336
337         * CSharpCodeGenerator.cs: GenerateComment(): Render multiline comments.
338
339 2003-07-30  Lluis Sanchez Gual <lluis@ximian.com>
340
341         * CSharpCodeGenerator.cs: GenerateTypeStart(): Write type custom attributes
342
343 2003-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
344
345         * CSharpCodeCompiler.cs: Few fixes for update in CodeDom.Compiler
346
347 2003-07-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
348
349         * CSharpCodeCompiler.cs: ignore debug statistics in mcs output when
350         debug is turned on.
351
352 2003-07-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
353
354         * CSharpCodeCompiler.cs: patch from pelle.johnsen@mail.dk (Pelle
355         Johnsen) that fixes bug #45708.
356
357 2003-05-17  Ben Maurer <bmaurer@users.sourceforge.net>
358
359         * CSharpCodeGenerator.cs: implemented GenerateLinePragma{Start, End}. 
360         Marked GenerateEvent as MonoTODO.
361
362 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
363
364         * CSharpCodeCompiler.cs: add quotes around out assembly name.
365
366 2003-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
367
368         * CSharpCodeCompiler.cs:
369         (CompileAssemblyFromDomBatch): add the assemblies referenced by the
370         CodeCompileUnits to the options.
371
372 2003-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
373
374         * CSharpCodeCompiler.cs: set NativeCompilerReturnValue.
375
376 2003-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
377
378         * CSharpCodeGenerator.cs:
379         (QuoteSnippetString): add a few common escape sequences.
380
381 2003-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
382
383         * CSharpCodeGenerator.cs: implemented GenerateSnippetMember and some
384         little fixes.
385
386 2003-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
387
388         * CSharpCodeGenerator.cs: beautified conditional statements. Implemented
389         GenerateConstructor and GenerateTypeConstructor.
390
391 2003-01-10  Duncan Mak  <duncan@ximian.com>
392
393         * CSharpCodeCompiler.cs: 
394         * CSharpCodeProvider.cs: Patch from Sean Kasun
395         <skasun@azstarnet.com> to implement CSharpCodeCompiler.
396
397 2002-12-07 Jackson Harper <jackson@latitudegeo.com>
398
399         * CompilerError.cs Compiler.cs: Moving these classes to their own assembly
400
401 2002-11-11 Jackson Harper <jackson@latitudegeo.com>
402
403         * CompilerError.cs: Reordered ErrorLevel enumeration to match MS values
404
405 2002-11-11 Jackson Harper <jackson@latitudegeo.com>
406
407         * CompilerError.cs: Error levels are now lower case to match MS spec
408
409 2002-11-9 Jackson Harper <jackson@latitudegeo.com>
410
411         * CompilerError.cs: ToString() Do not show source file info if there was no source file in the error message
412
413 2002-11-6 Jackson Harper <jackson@latitudegeo.com>
414
415         * Compiler.cs: No longers waits untill mcs is finished running to read output, this should prevent
416         crashes from buffers filling up.        
417
418 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
419
420         * Compiler.cs CompilerError.cs: Fixed (C) in header
421         
422 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
423
424         * Compiler.cs: Added file
425
426 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
427
428         * CompilerError.cs: Changed FileName property to the correct name 'SourceFile'
429
430 2002-10-30 Jackson Harper <jackson@latitudegeo.com>
431
432         * CompilerError.cs: Added class
433         
434 2002-10-19  Rachel Hestilow <hestilow@ximian.com>
435
436         * CSharpCodeProvider.cs
437         (GeneratePropertySetValueReferenceExpression): Implement.
438         (GenerateField, GenerateMethod): Only call OutputAttributeDeclarations
439         if there are any attributes.
440         (GenerateProperty): Implement.
441          
442 2002-10-11  Duncan Mak  <duncan@ximian.com>
443
444         * CSharpCodeProvider.cs: Fix constructor visibility.
445
446 2002-05-28  Daniel Stodden <stodden@in.tum.de>
447
448         * ChangeLog: added
449
450         * CSharpCodeProvider.cs: added
451
452         * CSharpCodeGenerator.cs: C# Code Generator. Not fully complete
453         but doing fairly well.