1 2007-12-15 Marek Habersack <mhabersack@novell.com>
3 * CSharpCodeProvider.cs: added support for the 2.0sp1 constructor
4 which takes a Dictionary <string, string> parameter with compiler
5 provider options. If any options are present, the
6 generator/compiler are created using appropriate constructor
9 * CSharpCodeGenerator.cs: added support for the 2.0sp1 constructor
10 which takes a Dictionary <string, string> parameter with compiler
13 * CSharpCodeCompiler.cs: added support for the 2.0sp1 constructor
14 which takes a Dictionary <string, string> parameter with compiler
15 provider options. The "CompilerVersion" option is supported, with
16 possible values "2.0" (currently maps to -langversion:Default) and
17 "3.5" (currently maps to -langversion:linq).
19 2007-10-26 Atsushi Enomoto <atsushi@ximian.com>
21 * CSharpCodeGenerator.cs : property name was not escaped.
23 2007-02-21 Gert Driesen <drieseng@users.sourceforge.net>
25 * CSharpCodeCompiler.cs: Also generate temp filename for OutputAssembly
26 if its a zero-length string. Fixed bug #80920. Set extension to exe or
27 dll depending on whether we're generating an executable or not.
29 2007-01-18 Atsushi Enomoto <atsushi@ximian.com>
31 * CSharpCodeGenerator.cs : for GenericTypeParameter, GetTypeOutput()
32 should just print its name.
33 For generic type definition, print "<>". OutputTypeArguments() was
34 also causing IndexOutOfRangeException.
36 2006-12-30 Marek Habersack <grendello@gmail.com>
38 * CSharpCodeGenerator.cs: implement actual identifier syntax correctness
39 checking, as defined in the C# standard (almost).
41 2006-08-08 Gert Driesen <drieseng@users.sourceforge.net>
43 * CSharpCodeCompiler.cs: Added support for embedded resources, fixes
44 bug #78384. Added support for linked resources. Removed unnecessary
45 null check for options.ReferencedAssemblies.
47 2006-07-16 Andrew Skiba <andrews@mainsoft.com>
49 * CSharpCodeCompiler.cs: find mono.exe in mono/mini; fixes #78731
51 2006-04-30 Marek Safar <marek.safar@seznam.cz>
53 * CSharpCodeCompiler.cs: mcs does not like /r:"" syntax; fixes #78038.
55 2005-12-07 Gert Driesen <drieseng@users.sourceforge.net>
57 * CSharpCodeGenerator.cs: Override GeneratePrimitiveExpression to
58 match .NET 1.x and 2.0 for float, decimal, char, ushort, uint, ulong
61 2005-11-30 Gert Driesen <drieseng@users.sourceforge.net>
63 * CSharpCodeGenerator.cs: No longer output semicolon and newline for
64 CodeVariableDeclarationStatement in for statement, fixes #75292.
65 Fixed NRE in GenerateEventReferenceExpression. Cosmetic changes to
66 code generated for iteration to match MS.NET. Temporary reduce
67 indentation for label and no longer escape label if its a keyword.
69 2005-11-26 Gert Driesen <drieseng@users.sourceforge.net>
71 * CSharpCodeGenerator.cs: Fixed GenerateComment to also write
72 comment chars for carriage-return (and skip linefeed, if its the
73 next character). Fixed output for TryCatchFinallyStatement. Fixed
74 GotoStatement to end with newline.
76 2005-11-04 Gert Driesen <drieseng@users.sourceforge.net>
78 * CSharpCodeGenerator.cs: Ignore ChecksumData of CodeChecksumPragma
81 2005-10-29 Sebastien Pouliot <sebastien@ximian.com>
83 * CSharpCodeProvider.cs: GenerateCodeFromMember method is an override
86 2005-10-28 Gert Driesen <drieseng@users.sourceforge.net>
88 * CSharpCodeGenerator.cs: Use fixed signature for entrypoint method
89 on 1.0 profile. On 2.0 profile output custom attributes, and return
90 type. On 1.0 profile, also replace + with dot (for nested types).
91 Fixes bug #76580. Set eol-style to native.
92 * CSharpCodeCompiler.cs: Set eol-style to native.
93 * CSharpCodeProvider.cs: Set eol-style to native.
95 2005-10-19 Miguel de Icaza <miguel@novell.com>
97 * CSharpCodeCompiler.cs: Quote the directory, to fix #76469
99 2005-10-17 Sebastien Pouliot <sebastien@ximian.com>
101 * CSharpCodeProvider.cs: Added a LinkDemand and an InheritanceDemand
102 for FullTrust (i.e. Unrestricted permission set) at the class level.
103 Added [Obsolete] on CreateCompiler and CreateGenerator methods (2.0).
104 Stubbed new method GenerateCodeFromMember (2.0).
106 2005-10-15 Gert Driesen <drieseng@users.sourceforge.net>
108 * CSharpCodeGenerator.cs: Support C bracing style. Fixes bug #76286.
110 2005-10-07 Gert Driesen <drieseng@users.sourceforge.net>
112 * CSharpCodeGenerator.cs: Fixed supported for type arguments in
113 GetTypeOutput on 2.0 profile. Partial fix for bug #76286.
115 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
117 * CSharpCodeCompiler.cs: patch from Maksim Vorobiev that prevents
118 InvalidOperationException if the thread running mcs is aborted.
120 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
122 * CSharpCodeCompiler.cs: made the colon optional so that both mcs and
125 2005-08-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
127 * CSharpCodeCompiler.cs: added missing colon after the line,column
128 parenthesis in the regex that parses the errors to make this work with
131 2005-07-30 Gert Driesen <drieseng@users.sourceforge.net>
133 * CSharpCodeGenerator.cs: Fixed code generated for NewSlot members.
135 2005-07-24 Gert Driesen <drieseng@users.sourceforge.net>
137 * CSharpCodeGenerator.cs: Fixed generated code for enums, interfaces
138 and delegates to match MS.NET.
140 2005-07-02 Gert Driesen <drieseng@users.sourceforge.net>
142 * CSharpCodeGenerator.cs: Fixed output of ReturnTypeCustomAttributes.
144 2005-07-02 Gert Driesen <drieseng@users.sourceforge.net>
146 * CSharpCodeGenerator.cs: Added PrivateImplementationType support
147 for events, properties, methods. No longer output scope modifier
150 2005-06-30 Gert Driesen <drieseng@users.sourceforge.net>
152 * CSharpCodeGenerator.cs: Only consider property an indexer if
153 name is Item (case-insensitive comparison) and property has
156 2005-06-28 Gert Driesen <drieseng@users.sourceforge.net>
158 * CSharpCodeGenerator.cs: Fixed GetTypeOutput to match MS.NET 1.x
161 2005-06-26 Gert Driesen <drieseng@users.sourceforge.net>
163 * CSharpCodeGenerator.cs: Fixed generated code for events, fields,
164 properties, methods and ctors to match MS.NET.
166 2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
168 * CSharpCodeGenerator.cs: Also modified generated code for type-level
169 attributes to match MS.NET.
171 2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
173 * CSharpCodeGenerator.cs: Fixed generated code for assembly-level
174 attributes to match code generated by MS.NET.
176 2005-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
178 * CSharpCodeCompiler.cs: use UTF8 in the StreamWriter, as it did before
179 r45802 removed it accidentally. Fixes bug #75361.
181 2005-06-12 Gert Driesen <drieseng@users.sourceforge.net>
183 * CSharpCodeCompiler.cs: Temp source files should have extension
186 2005-06-11 Gert Driesen <drieseng@users.sourceforge.net>
188 * CSharpCodeGenerator.cs: Win32 resources are supported. Fixes bug
190 * CSharpCodeCompiler.cs: Clean up temporary files after compilation.
191 Fixes bug #75221. Added support for Win32 resources. Fixes bug
194 2005-05-29 Gert Driesen <drieseng@users.sourceforge.net>
196 * CSharpCodeCompiler.cs: Load compiled assembly from byte array
197 if GenerateInMemory compiler parameter is set, set PathToAssembly
198 if compilation succeeded and GenerateInMemory is false.
201 2005-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
203 * CSharpCodeCompiler.cs: fix problem with the output CS8028.
205 2005-02-03 Atsushi Enomoto <atsushi@ximian.com>
207 * CSharpCodeCompiler.cs : On windows, use gmcs under 2.0 profile too.
209 2005-01-19 Jonathan Pryor <jonpryor@vt.edu>
211 * CSharpCodeGenerator.cs: Remove extra ' ' emitted after class name in
212 GenerateTypeStart(). This removes a regression test failure in
213 MonoTests.Microsoft.CSharp.CodeGeneratorFromTypeTest.DefaultTypeTest.
215 2005-01-12 Lluis Sanchez Gual <lluis@novell.com>
217 * CSharpCodeGenerator.cs: Avoid keywords when writing enum members.
218 Removed the GetSafeTypeName method. It was a wrong bug fix. Type names
219 are expected to always use the full name form, never the alias.
221 2004-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
223 * CSharpCodeCompiler.cs: ignore the 'BETA SOFTWARE blah' from gmcs.
224 Use stderr to get the errors/warnings instead of stdout. Removed
225 obsolete lines from CreateErrorFromString.
227 2004-10-02 Marek Safar <marek.safar@seznam.cz>
229 * CSharpCodeCompiler.cs: Fix #65722.
231 2004-09-14 Marek Safar <marek.safar@seznam.cz>
233 * CSharpCodeGenerator.cs: Fix #65854.
235 2004-09-08 Lluis Sanchez Gual <lluis@novell.com>
237 * CSharpCodeGenerator.cs: Reverted change in GenerateArrayCreateExpression.
238 It was causing regressions.
240 2004-09-06 Marek Safar <marek.safar@seznam.cz>
242 * CSharpCodeGenerator.cs: Implemented NET_2_0 extensions
244 2004-09-01 Marek Safar <marek.safar@seznam.cz>
246 * CSharpCodeGenerator.cs : New private member dont_write_semicolon.
247 Used for one row "for" syntax.
248 (GenerateEvent): Added attributes output.
249 (GenerateField): Don't output access and scope modifier for enum field.
250 (GenerateConstructor): Added attributes output.
251 (QuoteSnippetString): Fixed mixed case type conversion. Replace '+'
252 with '.' for nested classes.
254 2004-07-21 Lluis Sanchez Gual <lluis@novell.com>
256 * CSharpCodeCompiler.cs: Hack to make code generation work in 2.0.
258 2004-07-13 Peter Williams <peter@newton.cx>
260 * CSharpCodeCompiler.cs (CompileAssemblyFromDomBatch): Include
261 counter in the extension so that batch compilations work.
262 (CompileAssemblyFromSourceBatch): Same.
264 2004-07-12 Fawad Halim <fawad@fawad.net>
266 * CSharpCodeGenerator.cs : Have GenerateField generate field sans the type for enums.
268 2004-06-28 Atsushi Enomoto <atsushi@ximian.com>
270 * CSharpCodeCompiler.cs : (only for windows) First check mcs.bat, then
271 check mcs.exe. It enables xsp working with mono windows installer.
273 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
275 * CSharpCodeCompiler.cs : On windows we use fixed mono.exe and mcs.exe
276 located by mscorlib.dll.
278 2004-06-23 Jackson Harper <jackson@ximian.com>
280 * CSharpCodeGenerator.cs (GenerateLabeledStatement): Append a ": "
281 to the statement name. Make sure the statement isn't null before
282 writing. Patch by Alex Yakunin.
284 2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
286 * CSharpCodeGenerator.cs :
287 Check null argument in CreateValidIdentifier().
289 2004-06-21 Atsushi Enomoto <atsushi@ximian.com>
291 * CSharpCodeGenerator.cs : Fix for tests. Check type names in
292 CreateValidIdentifier. Implemented IsValidIdentifier.
294 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
296 * CSharpCodeCompiler.cs: let the TempFileCollection handle the removal
297 of the files if needed.
299 2004-04-26 Atsushi Enomoto <atsushi@ximian.com>
301 * CSharpCodeGenerator.cs : implemented GenerateEvent.
302 Delegate was output as usual class.
304 2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
306 * CSharpCodeGenerator.cs: In GetTypeOutput, never escape runtime type names.
307 Created a new method GetSafeTypeName to support this.
309 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
311 * CSharpCodeGenerator.cs: patch from Jaroslaw Kowalski that fixes
312 CodeMethodReturnStatement(). Closes bug #54934.
314 2004-02-27 Jaroslaw Kowalski <jaak@zd.com.pl>
316 * CSharpCodeGenerator.cs: fixed static property references
317 in GeneratePropertyReferenceExpression
319 2004-02-10 Jackson Harper <jackson@ximian.com>
321 * CSharpCodeCompiler.cs: Use the temp files collection for
324 2004-02-04 Jackson Harper <jackson@ximian.com>
326 * CSharpCodeGenerator.cs: Don't write ToThrow statement if it is
327 null (matches MS output). When creating comments there is a space
328 after the first // but not the following lines.
330 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
332 * CSharpCodeGenerator.cs: Implemented CreateEscapedIdentifier() and
333 CreateValidIdentifier().
335 2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
337 * CSharpCodeGenerator.cs: Do not generate access and scope modifiers for
340 2004-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
342 * CSharpCodeCompiler.cs: when generating files from DOM, set the
343 encoding to UTF-8 with BOM marker. Fixes bug #52604.
345 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
347 * CSharpCodeCompiler.cs: In BuildArgs, add "--" separator between
348 options and source files.
350 2003-10-15 Lluis Sanchez Gual <lluis@ximian.com>
352 * CSharpCodeGenerator.cs: added override for the method
353 GenerateParameterDeclarationExpression. The parameter must be
354 generated with a safe C# name.
356 2003-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
358 * CSharpCodeCompiler.cs: don't leave temporary files around.
360 2003-09-04 Lluis Sanchez Gual <lluis@ximian.com>
362 * CSharpCodeGenerator.cs: Fixed generation of array construction with
363 initializers. Render return type custom attributes.
365 2003-08-15 Jaroslaw Kowalski <jarek@atm.com.pl>
367 * CSharpCodeGenerator.cs:
369 - fixed support for method references where target
371 - fixed CodeThrowExceptionStatement
372 - disabled member access modifiers for private method
374 - disabled generation of empty method body for interface
376 - disabled generation of empty property accessor bodies
377 in interface declarations
378 - added support for indexers (properties named "Item")
379 - added support for chained constructor arguments and
380 base constructor arguments
382 2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
384 * CSharpCodeGenerator.cs: Added method GetSafeName() that checks if
385 a given id is a C# keyword, and returns the same if if it is not,
386 or @id if it is a keyword. This method is used everywhere
389 2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
391 * CSharpCodeGenerator.cs: GenerateComment(): Render multiline comments.
393 2003-07-30 Lluis Sanchez Gual <lluis@ximian.com>
395 * CSharpCodeGenerator.cs: GenerateTypeStart(): Write type custom attributes
397 2003-07-06 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
399 * CSharpCodeCompiler.cs: Few fixes for update in CodeDom.Compiler
401 2003-07-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
403 * CSharpCodeCompiler.cs: ignore debug statistics in mcs output when
406 2003-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
408 * CSharpCodeCompiler.cs: patch from pelle.johnsen@mail.dk (Pelle
409 Johnsen) that fixes bug #45708.
411 2003-05-17 Ben Maurer <bmaurer@users.sourceforge.net>
413 * CSharpCodeGenerator.cs: implemented GenerateLinePragma{Start, End}.
414 Marked GenerateEvent as MonoTODO.
416 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
418 * CSharpCodeCompiler.cs: add quotes around out assembly name.
420 2003-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
422 * CSharpCodeCompiler.cs:
423 (CompileAssemblyFromDomBatch): add the assemblies referenced by the
424 CodeCompileUnits to the options.
426 2003-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
428 * CSharpCodeCompiler.cs: set NativeCompilerReturnValue.
430 2003-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
432 * CSharpCodeGenerator.cs:
433 (QuoteSnippetString): add a few common escape sequences.
435 2003-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
437 * CSharpCodeGenerator.cs: implemented GenerateSnippetMember and some
440 2003-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
442 * CSharpCodeGenerator.cs: beautified conditional statements. Implemented
443 GenerateConstructor and GenerateTypeConstructor.
445 2003-01-10 Duncan Mak <duncan@ximian.com>
447 * CSharpCodeCompiler.cs:
448 * CSharpCodeProvider.cs: Patch from Sean Kasun
449 <skasun@azstarnet.com> to implement CSharpCodeCompiler.
451 2002-12-07 Jackson Harper <jackson@latitudegeo.com>
453 * CompilerError.cs Compiler.cs: Moving these classes to their own assembly
455 2002-11-11 Jackson Harper <jackson@latitudegeo.com>
457 * CompilerError.cs: Reordered ErrorLevel enumeration to match MS values
459 2002-11-11 Jackson Harper <jackson@latitudegeo.com>
461 * CompilerError.cs: Error levels are now lower case to match MS spec
463 2002-11-9 Jackson Harper <jackson@latitudegeo.com>
465 * CompilerError.cs: ToString() Do not show source file info if there was no source file in the error message
467 2002-11-6 Jackson Harper <jackson@latitudegeo.com>
469 * Compiler.cs: No longers waits untill mcs is finished running to read output, this should prevent
470 crashes from buffers filling up.
472 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
474 * Compiler.cs CompilerError.cs: Fixed (C) in header
476 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
478 * Compiler.cs: Added file
480 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
482 * CompilerError.cs: Changed FileName property to the correct name 'SourceFile'
484 2002-10-30 Jackson Harper <jackson@latitudegeo.com>
486 * CompilerError.cs: Added class
488 2002-10-19 Rachel Hestilow <hestilow@ximian.com>
490 * CSharpCodeProvider.cs
491 (GeneratePropertySetValueReferenceExpression): Implement.
492 (GenerateField, GenerateMethod): Only call OutputAttributeDeclarations
493 if there are any attributes.
494 (GenerateProperty): Implement.
496 2002-10-11 Duncan Mak <duncan@ximian.com>
498 * CSharpCodeProvider.cs: Fix constructor visibility.
500 2002-05-28 Daniel Stodden <stodden@in.tum.de>
504 * CSharpCodeProvider.cs: added
506 * CSharpCodeGenerator.cs: C# Code Generator. Not fully complete
507 but doing fairly well.