1 2008-05-07 Martin Baulig <martin@ximian.com>
3 * CSharpCodeCompiler.cs: Don't mess around with the
4 MONO_INSIDE_MDB environment variable, it may only be modified by
7 2008-04-09 Jb Evain <jbevain@novell.com>
9 * CSharpCodeGenerator.cs: Emit bodyless getters and setters
10 for abstract properties. Based on a patch by
11 Stefan Rusek <stefan@fogcreek.com>
13 2008-02-27 Marek Habersack <mhabersack@novell.com>
15 * CSharpCodeCompiler.cs: use asynchronous method of capturing mcs
16 output in the 2.0+ profile.
18 2008-02-26 Marek Habersack <mhabersack@novell.com>
20 * CSharpCodeCompiler.cs: CompilerResults.Output can now be set
23 2008-02-26 Atsushi Enomoto <atsushi@ximian.com>
25 * CSharpCodeCompiler.cs : build fix.
26 CompilerResults.Output is read only.
28 2008-02-25 Marek Habersack <mhabersack@novell.com>
30 * CSharpCodeCompiler.cs: ignore standard output and report only
31 lines printed to stdandard error to the caller.
33 2008-01-27 Gert Driesen <drieseng@users.sourceforge.net>
35 * CSharpCodeGenerator.cs: Avoid ArgumentNullException when
36 CodeDelegateInvokeExpression.TargetObject is null.
38 2008-01-16 Gert Driesen <drieseng@users.sourceforge.net>
40 * CSharpCodeGenerator.cs: Cosmetic changes to the code emitted for
41 type constraints. Allows our unit tests to pass on both Mono and MS.
43 2008-01-16 Juraj Skripsky <js@hotfeet.ch>
45 * CSharpCodeGenerator.cs (GenerateGenericsConstraints): Take
46 solitary constructor constraints into account. Fixes bug #353921.
48 2008-01-16 Zoltan Varga <vargaz@gmail.com>
50 * CSharpCodeCompiler.cs: Avoid setting results.CompiledAssembly since it might
51 be a netmodule. Fixes #353536.
53 2008-01-14 Marek Habersack <mhabersack@novell.com>
55 * CSharpCodeCompiler.cs: 3.0 is the default version now.
57 2008-01-10 Marek Habersack <mhabersack@novell.com>
59 * CSharpCodeCompiler.cs: check if running under the debugger and,
60 if yes, make sure that gmcs runs correctly by removing the
61 MONO_INSIDE_MDB environment variable before executing gmcs and
62 restore it after the compiler process exits. Fixes bug #352377.
64 2007-12-15 Marek Habersack <mhabersack@novell.com>
66 * CSharpCodeProvider.cs: added support for the 2.0sp1 constructor
67 which takes a Dictionary <string, string> parameter with compiler
68 provider options. If any options are present, the
69 generator/compiler are created using appropriate constructor
72 * CSharpCodeGenerator.cs: added support for the 2.0sp1 constructor
73 which takes a Dictionary <string, string> parameter with compiler
76 * CSharpCodeCompiler.cs: added support for the 2.0sp1 constructor
77 which takes a Dictionary <string, string> parameter with compiler
78 provider options. The "CompilerVersion" option is supported, with
79 possible values "2.0" (currently maps to -langversion:Default) and
80 "3.5" (currently maps to -langversion:linq).
82 2007-10-26 Atsushi Enomoto <atsushi@ximian.com>
84 * CSharpCodeGenerator.cs : property name was not escaped.
86 2007-02-21 Gert Driesen <drieseng@users.sourceforge.net>
88 * CSharpCodeCompiler.cs: Also generate temp filename for OutputAssembly
89 if its a zero-length string. Fixed bug #80920. Set extension to exe or
90 dll depending on whether we're generating an executable or not.
92 2007-01-18 Atsushi Enomoto <atsushi@ximian.com>
94 * CSharpCodeGenerator.cs : for GenericTypeParameter, GetTypeOutput()
95 should just print its name.
96 For generic type definition, print "<>". OutputTypeArguments() was
97 also causing IndexOutOfRangeException.
99 2006-12-30 Marek Habersack <grendello@gmail.com>
101 * CSharpCodeGenerator.cs: implement actual identifier syntax correctness
102 checking, as defined in the C# standard (almost).
104 2006-08-08 Gert Driesen <drieseng@users.sourceforge.net>
106 * CSharpCodeCompiler.cs: Added support for embedded resources, fixes
107 bug #78384. Added support for linked resources. Removed unnecessary
108 null check for options.ReferencedAssemblies.
110 2006-07-16 Andrew Skiba <andrews@mainsoft.com>
112 * CSharpCodeCompiler.cs: find mono.exe in mono/mini; fixes #78731
114 2006-04-30 Marek Safar <marek.safar@seznam.cz>
116 * CSharpCodeCompiler.cs: mcs does not like /r:"" syntax; fixes #78038.
118 2005-12-07 Gert Driesen <drieseng@users.sourceforge.net>
120 * CSharpCodeGenerator.cs: Override GeneratePrimitiveExpression to
121 match .NET 1.x and 2.0 for float, decimal, char, ushort, uint, ulong
124 2005-11-30 Gert Driesen <drieseng@users.sourceforge.net>
126 * CSharpCodeGenerator.cs: No longer output semicolon and newline for
127 CodeVariableDeclarationStatement in for statement, fixes #75292.
128 Fixed NRE in GenerateEventReferenceExpression. Cosmetic changes to
129 code generated for iteration to match MS.NET. Temporary reduce
130 indentation for label and no longer escape label if its a keyword.
132 2005-11-26 Gert Driesen <drieseng@users.sourceforge.net>
134 * CSharpCodeGenerator.cs: Fixed GenerateComment to also write
135 comment chars for carriage-return (and skip linefeed, if its the
136 next character). Fixed output for TryCatchFinallyStatement. Fixed
137 GotoStatement to end with newline.
139 2005-11-04 Gert Driesen <drieseng@users.sourceforge.net>
141 * CSharpCodeGenerator.cs: Ignore ChecksumData of CodeChecksumPragma
144 2005-10-29 Sebastien Pouliot <sebastien@ximian.com>
146 * CSharpCodeProvider.cs: GenerateCodeFromMember method is an override
149 2005-10-28 Gert Driesen <drieseng@users.sourceforge.net>
151 * CSharpCodeGenerator.cs: Use fixed signature for entrypoint method
152 on 1.0 profile. On 2.0 profile output custom attributes, and return
153 type. On 1.0 profile, also replace + with dot (for nested types).
154 Fixes bug #76580. Set eol-style to native.
155 * CSharpCodeCompiler.cs: Set eol-style to native.
156 * CSharpCodeProvider.cs: Set eol-style to native.
158 2005-10-19 Miguel de Icaza <miguel@novell.com>
160 * CSharpCodeCompiler.cs: Quote the directory, to fix #76469
162 2005-10-17 Sebastien Pouliot <sebastien@ximian.com>
164 * CSharpCodeProvider.cs: Added a LinkDemand and an InheritanceDemand
165 for FullTrust (i.e. Unrestricted permission set) at the class level.
166 Added [Obsolete] on CreateCompiler and CreateGenerator methods (2.0).
167 Stubbed new method GenerateCodeFromMember (2.0).
169 2005-10-15 Gert Driesen <drieseng@users.sourceforge.net>
171 * CSharpCodeGenerator.cs: Support C bracing style. Fixes bug #76286.
173 2005-10-07 Gert Driesen <drieseng@users.sourceforge.net>
175 * CSharpCodeGenerator.cs: Fixed supported for type arguments in
176 GetTypeOutput on 2.0 profile. Partial fix for bug #76286.
178 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
180 * CSharpCodeCompiler.cs: patch from Maksim Vorobiev that prevents
181 InvalidOperationException if the thread running mcs is aborted.
183 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
185 * CSharpCodeCompiler.cs: made the colon optional so that both mcs and
188 2005-08-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
190 * CSharpCodeCompiler.cs: added missing colon after the line,column
191 parenthesis in the regex that parses the errors to make this work with
194 2005-07-30 Gert Driesen <drieseng@users.sourceforge.net>
196 * CSharpCodeGenerator.cs: Fixed code generated for NewSlot members.
198 2005-07-24 Gert Driesen <drieseng@users.sourceforge.net>
200 * CSharpCodeGenerator.cs: Fixed generated code for enums, interfaces
201 and delegates to match MS.NET.
203 2005-07-02 Gert Driesen <drieseng@users.sourceforge.net>
205 * CSharpCodeGenerator.cs: Fixed output of ReturnTypeCustomAttributes.
207 2005-07-02 Gert Driesen <drieseng@users.sourceforge.net>
209 * CSharpCodeGenerator.cs: Added PrivateImplementationType support
210 for events, properties, methods. No longer output scope modifier
213 2005-06-30 Gert Driesen <drieseng@users.sourceforge.net>
215 * CSharpCodeGenerator.cs: Only consider property an indexer if
216 name is Item (case-insensitive comparison) and property has
219 2005-06-28 Gert Driesen <drieseng@users.sourceforge.net>
221 * CSharpCodeGenerator.cs: Fixed GetTypeOutput to match MS.NET 1.x
224 2005-06-26 Gert Driesen <drieseng@users.sourceforge.net>
226 * CSharpCodeGenerator.cs: Fixed generated code for events, fields,
227 properties, methods and ctors to match MS.NET.
229 2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
231 * CSharpCodeGenerator.cs: Also modified generated code for type-level
232 attributes to match MS.NET.
234 2005-06-25 Gert Driesen <drieseng@users.sourceforge.net>
236 * CSharpCodeGenerator.cs: Fixed generated code for assembly-level
237 attributes to match code generated by MS.NET.
239 2005-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
241 * CSharpCodeCompiler.cs: use UTF8 in the StreamWriter, as it did before
242 r45802 removed it accidentally. Fixes bug #75361.
244 2005-06-12 Gert Driesen <drieseng@users.sourceforge.net>
246 * CSharpCodeCompiler.cs: Temp source files should have extension
249 2005-06-11 Gert Driesen <drieseng@users.sourceforge.net>
251 * CSharpCodeGenerator.cs: Win32 resources are supported. Fixes bug
253 * CSharpCodeCompiler.cs: Clean up temporary files after compilation.
254 Fixes bug #75221. Added support for Win32 resources. Fixes bug
257 2005-05-29 Gert Driesen <drieseng@users.sourceforge.net>
259 * CSharpCodeCompiler.cs: Load compiled assembly from byte array
260 if GenerateInMemory compiler parameter is set, set PathToAssembly
261 if compilation succeeded and GenerateInMemory is false.
264 2005-04-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
266 * CSharpCodeCompiler.cs: fix problem with the output CS8028.
268 2005-02-03 Atsushi Enomoto <atsushi@ximian.com>
270 * CSharpCodeCompiler.cs : On windows, use gmcs under 2.0 profile too.
272 2005-01-19 Jonathan Pryor <jonpryor@vt.edu>
274 * CSharpCodeGenerator.cs: Remove extra ' ' emitted after class name in
275 GenerateTypeStart(). This removes a regression test failure in
276 MonoTests.Microsoft.CSharp.CodeGeneratorFromTypeTest.DefaultTypeTest.
278 2005-01-12 Lluis Sanchez Gual <lluis@novell.com>
280 * CSharpCodeGenerator.cs: Avoid keywords when writing enum members.
281 Removed the GetSafeTypeName method. It was a wrong bug fix. Type names
282 are expected to always use the full name form, never the alias.
284 2004-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
286 * CSharpCodeCompiler.cs: ignore the 'BETA SOFTWARE blah' from gmcs.
287 Use stderr to get the errors/warnings instead of stdout. Removed
288 obsolete lines from CreateErrorFromString.
290 2004-10-02 Marek Safar <marek.safar@seznam.cz>
292 * CSharpCodeCompiler.cs: Fix #65722.
294 2004-09-14 Marek Safar <marek.safar@seznam.cz>
296 * CSharpCodeGenerator.cs: Fix #65854.
298 2004-09-08 Lluis Sanchez Gual <lluis@novell.com>
300 * CSharpCodeGenerator.cs: Reverted change in GenerateArrayCreateExpression.
301 It was causing regressions.
303 2004-09-06 Marek Safar <marek.safar@seznam.cz>
305 * CSharpCodeGenerator.cs: Implemented NET_2_0 extensions
307 2004-09-01 Marek Safar <marek.safar@seznam.cz>
309 * CSharpCodeGenerator.cs : New private member dont_write_semicolon.
310 Used for one row "for" syntax.
311 (GenerateEvent): Added attributes output.
312 (GenerateField): Don't output access and scope modifier for enum field.
313 (GenerateConstructor): Added attributes output.
314 (QuoteSnippetString): Fixed mixed case type conversion. Replace '+'
315 with '.' for nested classes.
317 2004-07-21 Lluis Sanchez Gual <lluis@novell.com>
319 * CSharpCodeCompiler.cs: Hack to make code generation work in 2.0.
321 2004-07-13 Peter Williams <peter@newton.cx>
323 * CSharpCodeCompiler.cs (CompileAssemblyFromDomBatch): Include
324 counter in the extension so that batch compilations work.
325 (CompileAssemblyFromSourceBatch): Same.
327 2004-07-12 Fawad Halim <fawad@fawad.net>
329 * CSharpCodeGenerator.cs : Have GenerateField generate field sans the type for enums.
331 2004-06-28 Atsushi Enomoto <atsushi@ximian.com>
333 * CSharpCodeCompiler.cs : (only for windows) First check mcs.bat, then
334 check mcs.exe. It enables xsp working with mono windows installer.
336 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
338 * CSharpCodeCompiler.cs : On windows we use fixed mono.exe and mcs.exe
339 located by mscorlib.dll.
341 2004-06-23 Jackson Harper <jackson@ximian.com>
343 * CSharpCodeGenerator.cs (GenerateLabeledStatement): Append a ": "
344 to the statement name. Make sure the statement isn't null before
345 writing. Patch by Alex Yakunin.
347 2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
349 * CSharpCodeGenerator.cs :
350 Check null argument in CreateValidIdentifier().
352 2004-06-21 Atsushi Enomoto <atsushi@ximian.com>
354 * CSharpCodeGenerator.cs : Fix for tests. Check type names in
355 CreateValidIdentifier. Implemented IsValidIdentifier.
357 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
359 * CSharpCodeCompiler.cs: let the TempFileCollection handle the removal
360 of the files if needed.
362 2004-04-26 Atsushi Enomoto <atsushi@ximian.com>
364 * CSharpCodeGenerator.cs : implemented GenerateEvent.
365 Delegate was output as usual class.
367 2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
369 * CSharpCodeGenerator.cs: In GetTypeOutput, never escape runtime type names.
370 Created a new method GetSafeTypeName to support this.
372 2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
374 * CSharpCodeGenerator.cs: patch from Jaroslaw Kowalski that fixes
375 CodeMethodReturnStatement(). Closes bug #54934.
377 2004-02-27 Jaroslaw Kowalski <jaak@zd.com.pl>
379 * CSharpCodeGenerator.cs: fixed static property references
380 in GeneratePropertyReferenceExpression
382 2004-02-10 Jackson Harper <jackson@ximian.com>
384 * CSharpCodeCompiler.cs: Use the temp files collection for
387 2004-02-04 Jackson Harper <jackson@ximian.com>
389 * CSharpCodeGenerator.cs: Don't write ToThrow statement if it is
390 null (matches MS output). When creating comments there is a space
391 after the first // but not the following lines.
393 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
395 * CSharpCodeGenerator.cs: Implemented CreateEscapedIdentifier() and
396 CreateValidIdentifier().
398 2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
400 * CSharpCodeGenerator.cs: Do not generate access and scope modifiers for
403 2004-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
405 * CSharpCodeCompiler.cs: when generating files from DOM, set the
406 encoding to UTF-8 with BOM marker. Fixes bug #52604.
408 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
410 * CSharpCodeCompiler.cs: In BuildArgs, add "--" separator between
411 options and source files.
413 2003-10-15 Lluis Sanchez Gual <lluis@ximian.com>
415 * CSharpCodeGenerator.cs: added override for the method
416 GenerateParameterDeclarationExpression. The parameter must be
417 generated with a safe C# name.
419 2003-09-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
421 * CSharpCodeCompiler.cs: don't leave temporary files around.
423 2003-09-04 Lluis Sanchez Gual <lluis@ximian.com>
425 * CSharpCodeGenerator.cs: Fixed generation of array construction with
426 initializers. Render return type custom attributes.
428 2003-08-15 Jaroslaw Kowalski <jarek@atm.com.pl>
430 * CSharpCodeGenerator.cs:
432 - fixed support for method references where target
434 - fixed CodeThrowExceptionStatement
435 - disabled member access modifiers for private method
437 - disabled generation of empty method body for interface
439 - disabled generation of empty property accessor bodies
440 in interface declarations
441 - added support for indexers (properties named "Item")
442 - added support for chained constructor arguments and
443 base constructor arguments
445 2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
447 * CSharpCodeGenerator.cs: Added method GetSafeName() that checks if
448 a given id is a C# keyword, and returns the same if if it is not,
449 or @id if it is a keyword. This method is used everywhere
452 2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
454 * CSharpCodeGenerator.cs: GenerateComment(): Render multiline comments.
456 2003-07-30 Lluis Sanchez Gual <lluis@ximian.com>
458 * CSharpCodeGenerator.cs: GenerateTypeStart(): Write type custom attributes
460 2003-07-06 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
462 * CSharpCodeCompiler.cs: Few fixes for update in CodeDom.Compiler
464 2003-07-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
466 * CSharpCodeCompiler.cs: ignore debug statistics in mcs output when
469 2003-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
471 * CSharpCodeCompiler.cs: patch from pelle.johnsen@mail.dk (Pelle
472 Johnsen) that fixes bug #45708.
474 2003-05-17 Ben Maurer <bmaurer@users.sourceforge.net>
476 * CSharpCodeGenerator.cs: implemented GenerateLinePragma{Start, End}.
477 Marked GenerateEvent as MonoTODO.
479 2003-04-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
481 * CSharpCodeCompiler.cs: add quotes around out assembly name.
483 2003-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
485 * CSharpCodeCompiler.cs:
486 (CompileAssemblyFromDomBatch): add the assemblies referenced by the
487 CodeCompileUnits to the options.
489 2003-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
491 * CSharpCodeCompiler.cs: set NativeCompilerReturnValue.
493 2003-04-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
495 * CSharpCodeGenerator.cs:
496 (QuoteSnippetString): add a few common escape sequences.
498 2003-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
500 * CSharpCodeGenerator.cs: implemented GenerateSnippetMember and some
503 2003-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
505 * CSharpCodeGenerator.cs: beautified conditional statements. Implemented
506 GenerateConstructor and GenerateTypeConstructor.
508 2003-01-10 Duncan Mak <duncan@ximian.com>
510 * CSharpCodeCompiler.cs:
511 * CSharpCodeProvider.cs: Patch from Sean Kasun
512 <skasun@azstarnet.com> to implement CSharpCodeCompiler.
514 2002-12-07 Jackson Harper <jackson@latitudegeo.com>
516 * CompilerError.cs Compiler.cs: Moving these classes to their own assembly
518 2002-11-11 Jackson Harper <jackson@latitudegeo.com>
520 * CompilerError.cs: Reordered ErrorLevel enumeration to match MS values
522 2002-11-11 Jackson Harper <jackson@latitudegeo.com>
524 * CompilerError.cs: Error levels are now lower case to match MS spec
526 2002-11-9 Jackson Harper <jackson@latitudegeo.com>
528 * CompilerError.cs: ToString() Do not show source file info if there was no source file in the error message
530 2002-11-6 Jackson Harper <jackson@latitudegeo.com>
532 * Compiler.cs: No longers waits untill mcs is finished running to read output, this should prevent
533 crashes from buffers filling up.
535 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
537 * Compiler.cs CompilerError.cs: Fixed (C) in header
539 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
541 * Compiler.cs: Added file
543 2002-11-4 Jackson Harper <jackson@latitudegeo.com>
545 * CompilerError.cs: Changed FileName property to the correct name 'SourceFile'
547 2002-10-30 Jackson Harper <jackson@latitudegeo.com>
549 * CompilerError.cs: Added class
551 2002-10-19 Rachel Hestilow <hestilow@ximian.com>
553 * CSharpCodeProvider.cs
554 (GeneratePropertySetValueReferenceExpression): Implement.
555 (GenerateField, GenerateMethod): Only call OutputAttributeDeclarations
556 if there are any attributes.
557 (GenerateProperty): Implement.
559 2002-10-11 Duncan Mak <duncan@ximian.com>
561 * CSharpCodeProvider.cs: Fix constructor visibility.
563 2002-05-28 Daniel Stodden <stodden@in.tum.de>
567 * CSharpCodeProvider.cs: added
569 * CSharpCodeGenerator.cs: C# Code Generator. Not fully complete
570 but doing fairly well.