1 2007-07-09 Jürg Billeter <j@bitron.ch>
3 * vala/scanner.l, vala/parser.y, vala/valaarray.vala,
4 vala/valaarraycreationexpression.vala, vala/valaattribute.vala,
5 vala/valabaseaccess.vala, vala/valablock.vala,
6 vala/valabooleanliteral.vala, vala/valacallback.vala,
7 vala/valaclass.vala, vala/valacodecontext.vala,
8 vala/valacodenode.vala, vala/valacreationmethod.vala,
9 vala/valadatatype.vala, vala/valaelementaccess.vala,
10 vala/valaenum.vala, vala/valafield.vala, vala/valaflags.vala,
11 vala/valaformalparameter.vala, vala/valaforstatement.vala,
12 vala/valainitializerlist.vala, vala/valaintegerliteral.vala,
13 vala/valainterface.vala, vala/valainterfacewriter.vala,
14 vala/valainvocationexpression.vala, vala/valainvokable.vala,
15 vala/valalambdaexpression.vala, vala/valaliteralexpression.vala,
16 vala/valalocalvariabledeclaration.vala, vala/valamemberaccess.vala,
17 vala/valamemorymanager.vala, vala/valamethod.vala,
18 vala/valanamespace.vala, vala/valanullliteral.vala,
19 vala/valaobjectcreationexpression.vala, vala/valaparser.vala,
20 vala/valapointer.vala, vala/valaproperty.vala,
21 vala/valasemanticanalyzer.vala, vala/valasignal.vala,
22 vala/valasourcefile.vala, vala/valasourcereference.vala,
23 vala/valastringliteral.vala, vala/valastruct.vala,
24 vala/valaswitchsection.vala, vala/valaswitchstatement.vala,
25 vala/valasymbol.vala, vala/valasymbolresolver.vala,
26 vala/valatypereference.vala, vala/valavariabledeclarator.vala,
27 gobject/valaclassregisterfunction.vala,
28 gobject/valacodegenerator.vala,
29 gobject/valacodegeneratorassignment.vala,
30 gobject/valacodegeneratorclass.vala,
31 gobject/valacodegeneratorinterface.vala,
32 gobject/valacodegeneratorinvocationexpression.vala,
33 gobject/valacodegeneratormemberaccess.vala,
34 gobject/valacodegeneratormethod.vala,
35 gobject/valacodegeneratorsignal.vala,
36 gobject/valacodegeneratorsourcefile.vala,
37 gobject/valainterfaceregisterfunction.vala,
38 gobject/valatyperegisterfunction.vala, ccode/valaccodefragment.vala,
39 ccode/valaccodefunction.vala, compiler/valacompiler.vala,
40 vapi/cairo.vala, vapi/glib-2.0.vala, vapi/libxml-2.0.vala,
41 tests/test-023.vala, gobject-introspection/gidl.vala,
42 vapigen/valagidlparser.vala, vapigen/valavapigen.vala: remove obsolete
43 ref modifier and callback keyword
45 2007-07-09 Jürg Billeter <j@bitron.ch>
47 * vala/valainterfacewriter.vala: write static delegate instead of
49 * tests/test-014.vala, tests/test-015.vala, vapi/atk.vala,
50 vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gio-standalone.vala,
51 vapi/gtk+-2.0.vala, vapi/hal.vala, vapi/pango.vala, vapi/vte.vala: use
52 static delegate instead of callback
54 2007-07-09 Jürg Billeter <j@bitron.ch>
56 * vala/scanner.l, vala/parser.y: support delegate keyword and optional
57 modifiers to declare callbacks
59 2007-07-09 Jürg Billeter <j@bitron.ch>
61 * vala/parser.y: support # modifier to transfer ownership in method
64 2007-07-05 Jürg Billeter <j@bitron.ch>
66 * vapi/glib-2.0.vala: fix TimeVal binding
67 * vapi/dbus-glib-1.vala, vapi/hal.deps, vapi/hal.vala: add experimental
69 * vapi/Makefile.am: update
71 2007-07-04 Jürg Billeter <j@bitron.ch>
73 * vapi/glib-2.0.vala: update to new GRegex API
75 2007-07-03 Jürg Billeter <j@bitron.ch>
77 * vala/valainterfacewriter.vala: write cprefix and lower_case_cprefix
78 of namespaces and write cheader_filename of interfaces
79 * vala/valanamespace.vala: make set_cprefix and set_lower_case_cprefix
81 * ccode/valaccodewriter.vala, vala/valainterfacewriter.vala,
82 gobject/valaccodecompiler.vala, compiler/valacompiler.vala,
83 vapi/glib-2.0.vala, vapigen/valagidlparser.vala,
84 vapigen/valavapigen.vala: split GLib.File into GLib.FileStream and
85 GLib.FileUtils to not conflict with GVFS
86 * vala/valagidlparser.vala: improve support for GVFS
87 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
89 * vapi/gio-standalone.vala, vapi/packages/gio-standalone/: add
90 experimental VAPI for GVFS
91 * vapi/Makefile.am: update
93 2007-07-01 Jürg Billeter <j@bitron.ch>
95 * vapi/glib-2.0.vala: add more string utility functions and GDate
96 support, based on patch by Michael Lawrence, fixes bug 452015
98 2007-07-01 Jürg Billeter <j@bitron.ch>
100 * vala/parser.y, vala/valasymbolbuilder.vala,
101 vala/valasymbolresolver.vala, vala/valaenum.vala: add basic support
104 2007-06-30 Jürg Billeter <j@bitron.ch>
106 * vala/valasymbolbuilder.vala: fix current_symbol handling in
107 visit_property_accessor
108 * vapigen/valagidlparser.vala: add missing NoArrayLength attribute,
109 support hiding signals
110 * vapi/glib-2.0.vala: add GConnectFlags
111 * vapi/packages/pango/pango.gidl, vapi/pango.vala: updated to
113 * vapi/packages/gdk-2.0/gdk-2.0.gidl,
114 vapi/packages/gtk+-2.0/gtk+-2.0.gidl,
115 vapi/packages/gtk+-2.0/gtk+-2.0.metadata, vapi/gdk-2.0.vala,
116 vapi/gtk+-2.0.vala: updated to GTK+ 2.11.4, some small
117 GtkTreeModel/GtkTreeStore fixes
119 2007-06-15 Jürg Billeter <j@bitron.ch>
121 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
122 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
123 vala/valasemanticanalyzer.vala, vala/valasymbolbuilder.vala,
124 vala/valasymbolresolver.vala, vala/valaconstant.vala,
125 vala/valaconstructor.vala, vala/valacreationmethod.vala,
126 vala/valadestructor.vala, vala/valafield.vala,
127 vala/valaformalparameter.vala, vala/valamethod.vala,
128 vala/valaproperty.vala, vala/valapropertyaccessor.vala,
129 vala/valasignal.vala, gobject/valacodegenerator.vala,
130 gobject/valacodegeneratormethod.vala,
131 gobject/valacodegeneratorsignal.vala: move iteration of symbol nodes
132 from accept to accept_children method
134 2007-06-15 Jürg Billeter <j@bitron.ch>
136 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
137 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
138 vala/valaparser.vala, vala/valasemanticanalyzer.vala,
139 vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
140 vala/valacallback.vala, vala/valaclass.vala, vala/valaenum.vala,
141 vala/valaflags.vala, vala/valainterface.vala, vala/valastruct.vala,
142 gobject/valacodegenerator.class, gobject/valacodegeneratorclass.vala,
143 gobject/valacodegeneratorinterface.vala,
144 gobject/valacodegeneratorstruct.vala: move iteration of data types
145 from accept to accept_children method
147 2007-06-15 Jürg Billeter <j@bitron.ch>
149 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
150 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
151 vala/valaparser.vala, vala/valasemanticanalyzer.vala,
152 vala/valasourcefile.vala, vala/valasymbolbuilder.vala,
153 vala/valasymbolresolver.vala, vala/valacodenode.vala,
154 vala/valanamespace.vala, gobject/valacodegenerator.vala,
155 gobject/valacodegeneratorsourcefile.vala, vapigen/valagidlparser.vala:
156 move iteration of source files and namespaces from accept to
157 accept_children method
159 2007-06-15 Jürg Billeter <j@bitron.ch>
161 * vala/valacodecontext.vala, gobject/valaccodecompiler.vala,
162 compiler/valacompiler.vala: enhance commandline interface, add support
163 for invoking c compiler
164 * gobject/Makefile.am: update
165 * vapi/glib-2.0.vala: add shell-related utilities
167 2007-06-05 Jürg Billeter <j@bitron.ch>
169 * gobject/valacodegeneratorassignment.vala: correct invocation of setter
170 method of inherited properties, fixes bug 443527
171 * gobject/valacodegeneratormemberaccess.vala: remove outdated comment
173 2007-06-05 Jürg Billeter <j@bitron.ch>
175 * vala/valainvocationexpression.vala: support storing sizes of array
176 dimensions for methods returning arrays
177 * gobject/valacodegenerator.vala,
178 gobject/valacodegeneratorinvocationexpression.vala: add length
179 argument for methods returning arrays
180 * vapi/glib-2.0.vala: add missing NoArrayLength attributes
184 2007-06-05 Jürg Billeter <j@bitron.ch>
186 * gobject/valacodegenerator.vala: allow value-type arrays of unknown
187 length, assert at runtime when trying to iterate over such arrays
189 2007-05-31 Jürg Billeter <j@bitron.ch>
191 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
192 vala/valacodevisitor.vala, vala/valasizeofexpression.vala,
193 gobject/valacodegenerator.vala: support sizeof expression
194 * vala/vala.h, vala/Makefile.am: update
195 * vapi/glib-2.0.vala: add struct_size param to GLib.Source construction
198 2007-05-14 Jürg Billeter <j@bitron.ch>
200 * vala/valasemanticanalyzer.vala: improve argument checks of invocation
201 expression, fixes bug 435854
203 2007-05-10 Jürg Billeter <j@bitron.ch>
205 * ccode/valaccodeblock.vala, ccode/valaccodedeclaration.vala,
206 ccode/valaccodedeclarator.vala, ccode/valaccodefragment.vala,
207 ccode/valaccodefunctiondeclarator.vala, ccode/valaccodenode.vala,
208 ccode/valaccodeoncesection.vala, ccode/valaccodestruct.vala,
209 ccode/valaccodetypedefinition.vala,
210 ccode/valaccodevariabledeclarator.vala: separate declaration output
211 * vala/parser.y: remove comma at end of enum
212 * vala/valaclass.vala, vala/valastruct.vala: remove unused methods
213 * vala/Makefile.am: update
214 * gobject/valacodegeneratorsourcefile.vala: support declaration
216 * gobject/valaclassregisterfunction.vala,
217 gobject/valainterfaceregisterfunction.vala,
218 gobject/valatyperegisterfunction.vala: move from vala directory,
219 move interface info declarations to the beginning of the block
220 * gobject/Makefile.am: update
222 2007-05-09 Jürg Billeter <j@bitron.ch>
224 * ccode/valaccodeenum.vala: remove comma at end of generated enumerator
225 list, fixes gcc warning
227 2007-05-09 Jürg Billeter <j@bitron.ch>
229 * gobject/valacodegeneratorclass.vala: generate get_property and
230 set_property methods only when necessary, fixes bug 435848
232 2007-05-09 Jürg Billeter <j@bitron.ch>
234 * vala/parser.y: add basic checks for method modifiers, fixes bug 435853
235 * vala/vala.h: include valaflagsvalue.h
237 2007-05-09 Jürg Billeter <j@bitron.ch>
239 * vala/valanamespace.vala: iterate correctly over string in
240 camel_case_to_lower_case method, fixes bug 436760
242 2007-05-09 Jürg Billeter <j@bitron.ch>
244 * vala/valanamespace.vala: don't add default include directives for
245 VAPI files, fixes bug 436761
247 2007-05-07 Jürg Billeter <j@bitron.ch>
249 * vapi/glib-2.0.vala: correct strstr cname, patch by Zsombor
250 * vapi/gtk+-2.0.vala: add ellipsis to Gtk.ListStore.set() and
252 * vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala: update to GTK+ 2.10.12
254 2007-05-07 Jürg Billeter <j@bitron.ch>
256 * gobject/valacodegenerator.vala,
257 gobject/valacodegeneratormemberaccess.vala: ensure that local
258 variables don't use keywords in the C code
260 2007-05-07 Jürg Billeter <j@bitron.ch>
262 * vala/parser.y: declare variables at the beginning of blocks as
264 * gobject/valacodegeneratorclass.vala: avoid empty private struct
266 * vapi/glib-2.0.vala: use g_ascii_strtoll instead of strtoll
270 2007-05-03 Jürg Billeter <j@bitron.ch>
272 * gobject/valacodegenerator.vala,
273 gobject/valacodegeneratorassignment.vala,
274 gobject/valacodegeneratorclass.vala,
275 gobject/valacodegeneratorinterface.vala,
276 gobject/valacodegeneratorinvocationexpression.vala
277 gobject/valacodegeneratormemberaccess.vala,
278 gobject/valacodegeneratormethod.vala,
279 gobject/valacodegeneratorsignal.vala,
280 gobject/valacodegeneratorsourcefile.vala,
281 gobject/valacodegeneratorstruct.vala: split code generator
282 * gobject/Makefile.am, vapigen/Makefile.am: update
284 2007-05-03 Jürg Billeter <j@bitron.ch>
286 * gobject/valacodegenerator.vala: move code generator to new gobject
288 * configure.ac, Makefile.am, vala/Makefile.am, gobject/Makefile.am,
289 compiler/Makefile.am, vapi/Makefile.am: update
291 2007-05-03 Jürg Billeter <j@bitron.ch>
293 * vapi/glib-2.0.vala: GSList fixes and GIConv, patch by Michael Lawrence
295 2007-05-02 Jürg Billeter <j@bitron.ch>
297 * vapigen/gidlgen/gidlgen.in: use configured libdir, remove bashism,
298 based on patch by Mathias Hasselmann
299 * vapigen/gidlgen/Makefile.am: update
301 2007-05-02 Jürg Billeter <j@bitron.ch>
303 * gobject-introspection, vapigen, vapi/packages: move from vapigen
304 * configure.ac, Makefile.am: update
306 2007-04-30 Jürg Billeter <j@bitron.ch>
308 * configure.ac: Post-release version bump
310 2007-04-30 Jürg Billeter <j@bitron.ch>
312 * NEWS: update for 0.0.9 release
314 2007-04-30 Jürg Billeter <j@bitron.ch>
316 * vala/parser.y, vala/valasymbolbuilder.vala, vala/valaclass.vala,
317 vala/valanamespace.vala: add experimental support for class
318 declarations in multiple source files
320 2007-04-30 Jürg Billeter <j@bitron.ch>
322 * vala/valasemanticanalyzer.vala: check whether specified collection is
323 iterable in foreach statements, fixes bug 434514
325 2007-04-30 Jürg Billeter <j@bitron.ch>
327 * vala/valasemanticanalyzer.vala: allow any integer type as index in an
328 element access expression, fixes bug 434506
330 2007-04-30 Jürg Billeter <j@bitron.ch>
332 * vala/parser.y, vala/valasymbolbuilder.vala,
333 vala/valaattributeprocessor.vala, vala/valasemanticanalyzer.vala,
334 vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
335 vala/valaflags.vala: add basic support for flags, fixes bug 434511
337 2007-04-30 Jürg Billeter <j@bitron.ch>
339 * vala/valasemanticanalyzer.vala: check that void return values are not
340 used, fixes bug 434503
342 2007-04-30 Jürg Billeter <j@bitron.ch>
344 * vala/valasemanticanalyzer.vala: fix type check in relational
345 operations, fixes bug 434507
347 2007-04-30 Jürg Billeter <j@bitron.ch>
349 * vala/valacodegenerator.vala: add pointer to integer conversion in
350 foreach statements, fixes bug 433288
352 2007-04-24 Jürg Billeter <j@bitron.ch>
354 * vapi/glib-2.0.vala: add g_bit_nth_lsf, g_bit_nth_msf, and
357 2007-04-24 Jürg Billeter <j@bitron.ch>
359 * vala/valacallback.vala: add possibility to override default cname
360 * vala/valaattributeprocessor.vala: process callback attributes
361 * vala/valainterfacewriter.vala: cleanup code to write identifiers
363 2007-04-18 Jürg Billeter <j@bitron.ch>
365 * vala/valacodegenerator.vala: use const types where appropriate,
368 2007-04-18 Jürg Billeter <j@bitron.ch>
370 * vala/valacodegenerator.vala: simplify unref expression for non-null
372 * vala/valaclass.vala: don't mark fields as non-null due to
375 2007-04-12 Jürg Billeter <j@bitron.ch>
377 * vala/valatypereference.vala: add is_null property
378 * vala/valasemanticanalyzer.vala: fix type analysis in conditional and
379 parenthesized expressions, fixes bug 428368
380 * vapi/glib-2.0.vala: don't mark GLib.Object and GLib.InitiallyUnowned
383 2007-04-12 Jürg Billeter <j@bitron.ch>
385 * vala/valacodegenerator.vala: fix warning when using interface
388 2007-04-06 Jürg Billeter <j@bitron.ch>
390 * vala/scanner.l: use yyleng instead of strlen
391 * vala/valainterfacewriter.vala: don't write unnecessary attributes to
393 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
394 remove unnecessary attributes to reduce parse time
396 2007-04-05 Jürg Billeter <j@bitron.ch>
398 * vala/valacodegenerator.vala, vala/valaforstatement.vala: support
399 temporary variables in initializers and iterators of for statements
400 * vala/valacodegenerator.vala: support freeing generic types
401 * vala/parser.y, vala/valacodevisitor.vala,
402 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
403 vala/valareferencetransferexpression.vala: add reference transfer
404 expressions, e.g. `#var'
405 * vala/vala.h, vala/Makefile.am: update
407 2007-04-05 Jürg Billeter <j@bitron.ch>
409 * vala/valacodegenerator.vala: generate properties for destroy function
410 pointers in generic types
412 2007-04-05 Jürg Billeter <j@bitron.ch>
414 * vala/valacodegenerator.vala: pass destroy function pointer when
415 creating instances of generic types
416 * vala/valaclass.vala: add get_type_parameters method
418 2007-04-04 Jürg Billeter <j@bitron.ch>
420 * vala/scanner.l: improve cast support
421 * vala/valasemanticanalyzer.vala: fix ownership handling of local arrays
422 * vala/valacodegenerator.vala: skip code generation for static
423 interfaces, downgrade generic management support message to warning
424 * vala/valacallback.vala: support callbacks as property type
426 2007-04-04 Jürg Billeter <j@bitron.ch>
428 * vala/scanner.l: support casts to generic types
429 * vala/valasymbolresolver.vala, vala/valatypereference.vala: support
430 arrays of generic types
431 * vala/valasymbolresolver.vala: don't take ownership of elements of weak
433 * vala/valasemanticanalyzer.vala: accept uint as index value
434 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
435 vala/valastatement.vala: minor cleanup of creation methods
436 * vala/valacodegenerator.vala: support creation methods for structs, fix
437 pointer as return type
438 * vapi/glib-2.0.vala: add CLAMP and g_spaced_primes_closest
440 2007-04-03 Jürg Billeter <j@bitron.ch>
442 * vapi/math.vala: add mathematical functions, patch by
444 * vapi/Makefile.am: update
446 2007-04-03 Jürg Billeter <j@bitron.ch>
448 * vala/valacodegenerator.vala: initialize new array elements after
449 resizing an array, patch by Mathias Hasselmann
450 * vala/valaproperty.vala: fix for interface properties
452 2007-04-03 Jürg Billeter <j@bitron.ch>
454 * doc/valac.1, doc/Makefile.am: add manual page for valac written by
456 * Makefile.am, configure.ac: update
458 2007-04-03 Jürg Billeter <j@bitron.ch>
460 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
461 vala/valatypereference.vala: support declaration of local arrays
462 * tests/test-022.vala: test local array declaration
464 2007-04-03 Jürg Billeter <j@bitron.ch>
466 * vala/valasymbolbuilder.vala, vala/valacodegenerator.vala: some fixes
467 for abstract properties
468 * vala/valamethod.vala: improve default cname
470 2007-04-03 Jürg Billeter <j@bitron.ch>
472 * vapi/glib-2.0.vala: extend unicode support, add GRegex
474 2007-03-28 Raffaele Sandrini <rasa@gmx.ch>
476 * vapi/glib-2.0.vala: declare HashFunc and EqualFunc as callback
477 functions, patch by David Keijser
479 2007-03-25 Raffaele Sandrini <rasa@gmx.ch>
481 * vapi/vte.vala, vapi/vte.deps: add vte binding
482 * vapi/Makefile.am: update
484 2007-03-24 Raffaele Sandrini <rasa@gmx.ch>
486 * vala/valaforstatement.vala: assign parent_node to children of this
487 statement; include iterator and initializer in replacement of a child
488 node (fixes segfault using prefix increment expression in the
489 iterator of a for-statement)
491 2007-03-22 Raffaele Sandrini <rasa@gmx.ch>
493 * vala/valaflags.vala, vala/valaenum.vala, vala/valadatatype.vala,
494 vala/valastruct.vala: add support for default values of types
495 * vala/valacodegenerator.vala: use default values for initialization
496 * vapi/glib-2.0.vala: add default values for common types
498 2007-03-22 Jürg Billeter <j@bitron.ch>
500 * configure.ac: Post-release version bump
502 2007-03-22 Jürg Billeter <j@bitron.ch>
504 * NEWS: update for 0.0.8 release
505 * tests/Makefile.am: update
507 2007-03-22 Raffaele Sandrini <rasa@gmx.ch>
509 * vala/valacodegenerator.vala: fix generation of unresolvable 'memset'
510 for classes without strings.
512 2007-03-21 Raffaele Sandrini <rasa@gmx.ch>
514 * vapi/pango.vala: add Pango.Cairo and Pango.CairoFontMap
515 * vapi/pango.deps: add cairo dependency
516 * vapi/Makefile.am: update
518 2007-03-21 Jürg Billeter <j@bitron.ch>
520 * vala/valacodegenerator.vala: fix properties with interface types
521 * vala/valamemorymanager.vala: fix memory management when storing array
523 * vala/valaconstant.vala: obey overridden cprefix in namespaces
524 * vapi/config.vala: override lower_case_cprefix of namespace
526 2007-03-21 Raffaele Sandrini <rasa@gmx.ch>
528 * vala/valaconstant.vala: add '_' between namespace and name of
529 namespace constants' cname
531 2007-03-21 Jürg Billeter <j@bitron.ch>
533 * vala/valainterfacewriter.vala: minor output enhancements
534 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
535 improve handling of value-types and arrays
537 2007-03-21 Jürg Billeter <j@bitron.ch>
539 * vala/parser.y, vala/valainterface.vala: support static interfaces
540 * vala/valastruct.vala: make set_type_id public
541 * vapi/glib-2.0.vala: add GBoxed as interface
543 2007-03-21 Jürg Billeter <j@bitron.ch>
545 * vala/valastruct.vala: use pointer as default of type_id and
546 marshaller_type_name for reference types
547 * vala/valapointer.vala: implement get_type_id
549 2007-03-21 Jürg Billeter <j@bitron.ch>
551 * vala/valacodegenerator.vala: deep copy GLists if necessary, patch by
553 * vapi/glib-2.0.vala: fix some printf format strings to work on ILP32
556 2007-03-21 Jürg Billeter <j@bitron.ch>
558 * vapi/glib-2.0.vala: improve support for numeric types, patch by
560 * tests/test-030.vala, tests/test-030.out, tests/test-031.vala,
561 tests/test-031.out: test numeric types
562 * tests/testrunner.sh: use c99 and math library
563 * tests/Makefile.am: update
565 2007-03-21 Jürg Billeter <j@bitron.ch>
567 * vala/valainterface.vala: implement marshalling support
568 * vala/valacodegenerator.vala: support signals with interface parameters
570 2007-03-20 Raffaele Sandrini <rasa@gmx.ch>
572 * vapi/glib-2.0.vala: add extended runtime type support
573 * vala/parser.y: also read property modifiers in set-only properties
575 2007-03-20 Jürg Billeter <j@bitron.ch>
577 * vala/valasymbolresolver.vala: add GObject to the list of base types
578 * vapi/glib-2.0.vala: add ref and unref methods to GObject
580 2007-03-20 Jürg Billeter <j@bitron.ch>
582 * vala/valaparser.vala, vala/valasemanticanalyzer.vala,
583 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
584 vala/valacallback.vala, vala/valainvocationexpression.vala,
585 vala/valamethod.vala, vala/valaobjectcreationexpression.vala: use weak
586 local variables where appropriate
587 * vala/parser.y, vala/valasemanticanalyzer.vala: default local variables
589 * vala/valasemanticanalyzer.vala: don't promote local variables from
590 weak to strong reference
591 * vala/valacodegenerator.vala: warn when duplicating non-reference
592 counted structs implicitly
594 2007-03-20 Jürg Billeter <j@bitron.ch>
596 * tests/testrunner.sh: run with /bin/bash due to bashism, patch by
599 2007-03-20 Jürg Billeter <j@bitron.ch>
601 * vapi/glib-2.0.vala: wrap functions for escaping markup strings, patch
602 by Mathias Hasselmann
604 2007-03-20 Jürg Billeter <j@bitron.ch>
606 * vala/valacodegenerator.vala: free lists of interfaces correctly, patch
607 by Mathias Hasselmann
609 2007-03-17 Jürg Billeter <j@bitron.ch>
611 * compiler/valacompiler.vala, compiler/Makefile.am, vapi/config.vala:
612 consider install prefix when searching for packages, patch by
614 * configure.ac: add AM_PROG_CC_C_O
615 * autogen.sh, MAINTAINERS: added
616 * Makefile.am: dist MAINTAINERS
618 2007-03-17 Jürg Billeter <j@bitron.ch>
620 * vala/valasemanticanalyzer.vala, vala/valacodegnerator.vala,
621 vala/valaclassregisterfunction.vala,
622 vala/valainterfaceregisterfunction.vala,
623 vala/valatyperegisterfunction.vala, vala/valacodecontext.vala: support
624 creating GTypeModule-based plug-ins with the ModuleInit attribute
625 * vala/parser.y, vala/valacodegenerator.vala, vala/valaclass.vala:
626 support static classes
627 * vapi/glib-2.0.vala: add TypePlugin and TypeModule
629 2007-03-17 Jürg Billeter <j@bitron.ch>
631 * vala/parser.y: accept attributes without parentheses
632 * vala/valainterfacewriter.vala: don't write weak keyword for value
634 * vapi/atk.vala, vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala,
635 vapi/libxml-2.0.vala, vapi/pango.vala: update
637 2007-03-17 Jürg Billeter <j@bitron.ch>
639 * ccode/valaccodeunaryexpression.vala: support pointer indirections
640 * vala/parser.y, vala/valacodevisitor.vala,
641 vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
642 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
643 vala/valaaddressofexpression.vala, vala/valadatatype.vala,
644 vala/valapointer.vala, vala/valapointerindirection.vala,
645 vala/valatypereference.vala: support pointer-types, pointer
646 indirections, and address-of expressions
647 * vala/vala.h, vala/Makefile.am: update
649 2007-03-16 Jürg Billeter <j@bitron.ch>
651 * vala/parser.y: support weak keyword in local variable declarations
652 * vapi/glib-2.0.vala: improve GError support
654 2007-03-16 Jürg Billeter <j@bitron.ch>
656 * vala/valacodegenerator.vala: support disconnecting signals, based on
657 patch by Alexandre Moreira
658 * tests/test-018.vala, tests/test-018.out: test disconnecting signals
660 2007-03-16 Jürg Billeter <j@bitron.ch>
662 * vala/valacodegenerator.vala: fix null pointer dereference when
665 2007-03-16 Jürg Billeter <j@bitron.ch>
667 * vala/parser.y: default to strong references for method return types
668 * vala/valasymbolresolver.vala: reset TypeReference.transfers_ownership
670 * vala/valasourcefile.vala: assume ownership of include filenames
671 * vala/valainterfacewriter.vala: use weak keyword for return types
672 * vala/valacodecontext.vala, vala/valasourcefile.vala,
673 vala/valasymbolbuilder.vala, vapi/glib-2.0.vala: add weak to return
676 2007-03-11 Jürg Billeter <j@bitron.ch>
678 * vala/valasemanticanalyzer.vala: resolve generic return values
679 * vala/valamemorymanager.vala: fix check for generic method parameters
680 to support derived types
681 * vala/valainterface.vala: implement get_type_parameter_index
682 * vala/valamemberaccess.vala: visit type arguments
683 * vala/valaclassregisterfunction.vala,
684 vala/valainterfaceregisterfunction.vala,
685 vala/valatyperegisterfunction.vala: pass base_init function pointer
687 * vala/valacodegenerator.vala: fix initialization check in interface
689 * vala/valasemanticanalyzer.vala: fix prerequisite check to also accept
690 derived types of prerequisites
692 2007-03-10 Jürg Billeter <j@bitron.ch>
694 * ccode/valaccodecastexpression.vala: correct bracketing in cast
697 2007-03-10 Jürg Billeter <j@bitron.ch>
699 * vala/valacodegenerator.vala: support interface properties and signals,
700 improve support for generics
702 2007-03-10 Jürg Billeter <j@bitron.ch>
704 * vala/parser.y, vala/valasymbolbuilder.vala,
705 vala/valasemanticanalyzer.vala, vala/valaproperty.vala: support
706 abstract, virtual, and override modifiers for properties
707 * vala/parser.y: support get and set as identifiers
709 2007-03-10 Jürg Billeter <j@bitron.ch>
711 * vala/valatypereference.vala: correct cname of generic type parameters
713 2007-03-10 Jürg Billeter <j@bitron.ch>
715 * vala/valacreationmethod.vala, vala/valamethod.vala: fix overriding
716 cname of creation methods
718 2007-03-07 Jürg Billeter <j@bitron.ch>
720 * vala/valasemanticanalyzer.vala: check whether a class implements all
721 abstract methods of base classes
722 * vala/valacodenode.vala, vala/valadatatype.vala,
723 vala/valaexpression.vala, vala/valaliteral.vala: fix build with added
726 2007-03-07 Jürg Billeter <j@bitron.ch>
728 * vala/valaclass.vala: implement get_type_parameter_index
730 2007-03-07 Raffaele Sandrini <rasa@gmx.ch>
732 * vala/valasemanticanalyzer.vala: check whether a class implements all
733 methods required by its super interfaces
735 2007-03-05 Jürg Billeter <j@bitron.ch>
737 * vala/scanner.l, vala/parser.y, vala/valacatchclause.vala,
738 vala/valathrowstatement.vala, vala/valatrystatement.vala,
739 vala/valacodevisitor.vala: add exception handling support to the
741 * vala/vala.h, vala/Makefile.am: update
743 2007-03-05 Raffaele Sandrini <rasa@gmx.ch>
745 * vala/valainterfaceregisterfunction.vala: add
746 `g_type_interface_add_prerequisite' calls during interface type
748 * vala/valasemanticanalyzer.vala: add checks for consistent interface
749 prerequisites and whether classes are obeying them
751 2007-03-04 Jürg Billeter <j@bitron.ch>
753 * configure.ac: Post-release version bump
755 2007-03-04 Jürg Billeter <j@bitron.ch>
757 * NEWS: update for 0.0.7 release
759 2007-03-04 Jürg Billeter <j@bitron.ch>
761 * vala/parser.y: pack all embedded stataments in blocks
762 * vala/vala.h: update
764 2007-03-04 Jürg Billeter <j@bitron.ch>
766 * vala/valasemanticanalyzer.vala: check for inherited properties in
767 construct formal parameters
769 2007-03-04 Jürg Billeter <j@bitron.ch>
771 * vala/valasemanticanalyzer.vala: don't allow interface implementations
773 * vala/valaconstant.vala, vala/valafield.vala,
774 vala/valaformalparameter.vala, vala/valamethod.vala,
775 vala/valaproperty.vala, vala/valasignal.vala,
776 vala/valavariabledeclarator.vala: remove override from interface
779 2007-03-04 Jürg Billeter <j@bitron.ch>
781 * vala/parser.y, vala/valainterface.vala,
782 vala/valasemanticanalyzer.vala: rename base_types of interfaces to
783 prerequisites to follow GObject terminology
784 * vala/valamethod.vala, vala/valasemanticanalyzer.vala,
785 vala/valacodegenerator.vala: move interface usage part from
786 base_method to base_interface_method property
787 * vala/valasemanticanalyzer.vala: don't require interface
788 implementations to specify override
789 * vala/valacodegenerator.vala: support base access in interface
791 * tests/test-017.vala: remove override in method declaration
793 2007-03-04 Jürg Billeter <j@bitron.ch>
795 * vala/valasemanticanalyzer.vala: support lambda expressions in
797 * tests/test-029.vala: remove extra printf argument
799 2007-03-04 Raffaele Sandrini <rasa@gmx.ch>
801 * vala/valasemanticanalyzer.vala, vala/parser.y,
802 vala/valaformalparameter.vala: add support for construct formal
803 creation method parameters
804 * tests/test-029.vala, tests/test-029.out: add testcase for construct
806 * tests/Makefile.am: update
808 2007-03-04 Raffaele Sandrini <rasa@gmx.ch>
810 * vala/valaattributeprocessor.vala, vala/valacharacterliteral.vala,
811 vala/valamethod.vala, vala/valasymbolbuilder.vala,
812 vala/valacodevisitor.vala, vala/valainterfacewriter.vala,
813 vala/valamemorymanager.vala: update/fix copyright notice
815 2007-03-03 Raffaele Sandrini <rasa@gmx.ch>
817 * vala/valaattributeprocessor.vala, vala/valamethod.vala,
818 vala/valacodegenerator.vala, vala/valacreationmethod.vala,
819 vala/valasymbolbuilder.vala, vala/valasemanticanalyzer.vala,
820 vala/parser.y, vala/valacodevisitor.vala,
821 vala/valainterfacewriter.vala, vala/valamemorymanager.vala:
822 add CreationMethod type; restrict creation methods bodys to contain
823 only property assignment statements
824 * vala/valacharacterliteral.vala, vala/valacodegenerator.vala,
825 vala/valaarray.vala: fix the compiler to obey the new creation
827 * vala/Makefile.am: update
829 2007-03-03 Jürg Billeter <j@bitron.ch>
831 * vapi/atk.vala, vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala,
832 vapi/pango.vala: switch to new construction syntax
834 2007-03-03 Jürg Billeter <j@bitron.ch>
836 * vala/parser.y: remove support of old construction syntax
838 2007-03-03 Jürg Billeter <j@bitron.ch>
840 * Switch to new construction syntax
842 2007-03-03 Jürg Billeter <j@bitron.ch>
844 * vala/parser.y: support new construction syntax
845 * vala/valainterfacewriter.vala: write interface with new construction
848 2007-03-01 Jürg Billeter <j@bitron.ch>
850 * vala/valatypereference.vala: improve equality check
851 * vala/valatypeparameter.vala: add type parameter equality check
852 * vala/valasemanticanalyzer.vala: add symbol dependencies for
853 interfaces, support overriding methods of interfaces with
856 2007-02-28 Jürg Billeter <j@bitron.ch>
858 * configure.ac: Post-release version bump
860 2007-02-28 Jürg Billeter <j@bitron.ch>
862 * NEWS: update for 0.0.6 release
863 * tests/Makefile.am: correctly distribute test sources
865 2007-02-28 Jürg Billeter <j@bitron.ch>
867 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
870 2007-02-28 Jürg Billeter <j@bitron.ch>
872 * tests/test-022.vala, tests/test-022.out: test Array.resize method and
874 * vala/valacodegenerator.vala: update length when resizing arrays
876 2007-02-27 Jürg Billeter <j@bitron.ch>
878 * vala/valacodenode.vala: mark source_reference as construction property
879 to allow access in Array constructor
880 * vala/valaarraylengthfield.vala: the Array.length field
881 * vala/valaarrayresizemethod.vala: the Array.resize method
882 * vala/valaarray.vala: support arrays of generic type parameters, add
883 length field, add resize method
884 * vala/valatypereference.vala: make source reference optional
885 * vala/valatypeparameter.vala, vala/valasymbolresolver.vala,
886 vala/valasemanticanalyzer.vala: support arrays of generic type
888 * vala/valadatatype.vala, vala/valacodegenerator.vala: support
889 Array.length field and Array.resize method
890 * vala/Makefile.am: update
892 2007-02-27 Jürg Billeter <j@bitron.ch>
894 * vala/parser.y: accept interfaces with base types
896 2007-02-26 Jürg Billeter <j@bitron.ch>
898 * vala/valasymbolresolver.vala: fix error handling with unknown
901 2007-02-26 Jürg Billeter <j@bitron.ch>
903 * tests/test-028.vala, tests/test-028.out: test enums
904 * tests/Makefile.am: update
906 2007-02-26 Jürg Billeter <j@bitron.ch>
908 * tests/test-027.vala, tests/test-027.out: test postfix and prefix
910 * tests/Makefile.am: update
911 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
912 prefix and postfix expressions for properties and parenthesized
915 2007-02-25 Jürg Billeter <j@bitron.ch>
917 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: improve
918 subtyping suport for structs
920 2007-02-25 Jürg Billeter <j@bitron.ch>
922 * tests/test-026.vala, tests/test-026.out: test hidden base method
924 * tests/Makefile.am: update
925 * vala/valasemanticanalyzer.vala: correct symbol_reference for base
926 access, add current_struct field
928 2007-02-25 Jürg Billeter <j@bitron.ch>
930 * tests/test-010.vala, tests/test-010.out: enhance assignment test
931 * vala/valasemanticanalyzer.vala: correct bracketing in compound
934 2007-02-25 Jürg Billeter <j@bitron.ch>
936 * vala/valacodenode.vala: add to_string method
938 2007-02-25 Jürg Billeter <j@bitron.ch>
940 * vapi/glib-2.0.vala: improve GSource support
942 2007-02-22 Raffaele Sandrini <rasa@gmx.ch>
944 * vala/valacodegenerator.vala: don't allow NULL terminated arrays of
945 value-type structs and remove the check on such arrays in a freach
948 2007-02-21 Jürg Billeter <j@bitron.ch>
950 * vala/valacallback.vala: support using instance methods as static
953 2007-02-19 Jürg Billeter <j@bitron.ch>
955 * vapi/glib-2.0.vala: more string functions (patch by Cayle Graumann)
957 2007-02-18 Raffaele Sandrini <rasa@gmx.ch>
959 * vala/valainterfacewriter.vala: fix indentation for class definitions
961 2007-02-04 Jürg Billeter <j@bitron.ch>
963 * vapi/glib-2.0.vala: add GLib.Queue
965 2007-02-04 Jürg Billeter <j@bitron.ch>
967 * vala/valaconstant.vala: fix global constants
968 * vapi/glib-2.0.vala: add NoArrayLength attribute to Process functions
970 2007-02-04 Jürg Billeter <j@bitron.ch>
972 * vala/valacodegenerator.vala: use correct type cname in array creation
973 expression, don't assume that all string arrays own their content
975 2007-02-04 Jürg Billeter <j@bitron.ch>
977 * vala/parser.y: fix crash when parsing array creation expression
979 2006-12-23 Jürg Billeter <j@bitron.ch>
981 * vala/valaattribute.vala: add get_bool method for boolean values
982 * compiler/valacompiler.vala: print message when detecting option errors
984 2006-12-10 Jürg Billeter <j@bitron.ch>
986 * vapi/glib-2.0.vala: add message logging functions
987 * vala/valasemanticanalyzer.vala: support enum to int conversions and
989 * vala/valacodegenerator.vala: support do statements
991 2006-11-24 Jürg Billeter <j@bitron.ch>
993 * vala/valacodegenerator.vala: fix generating switch statements
995 2006-11-23 Jürg Billeter <j@bitron.ch>
997 * vala/valacodegenerator.vala: allow main methods without parameters and
998 main methods returning void, check complete signature of main method
1000 2006-11-22 Jürg Billeter <j@bitron.ch>
1002 * vala/parser.y, vala/valacodegenerator.vala: support enum members with
1005 2006-11-22 Jürg Billeter <j@bitron.ch>
1007 * vapi/glib-2.0.vala: add direct_hash and direct_equal
1008 * tests/Makefile.am: distribute reference output
1010 2006-11-21 Jürg Billeter <j@bitron.ch>
1012 * vala/valaclass.vala, vala/valaenum.vala, vala/valafield.vala,
1013 vala/valainterface.vala, vala/valanamespace.vala,
1014 vala/valastruct.vala: use new attribute functionality
1016 2006-11-21 Jürg Billeter <j@bitron.ch>
1018 * vala/valaattribute.vala: add has_argument, get_string, and get_integer
1020 * vala/valacodenode.vala: add get_attribute method
1021 * vala/valamethod.vala: use new attribute functionality
1023 2006-11-21 Jürg Billeter <j@bitron.ch>
1025 * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: don't
1026 require GLib namespace at runtime in symbol resolver and semantic
1029 2006-11-21 Jürg Billeter <j@bitron.ch>
1031 * tests/testrunner.sh: add test script
1032 * tests/*.out: add reference output for test cases
1033 * tests/Makefile.am: add test environment
1035 2006-11-20 Jürg Billeter <j@bitron.ch>
1037 * vala/valacodegenerator.vala: fix code generation for structs
1039 2006-11-11 Jürg Billeter <j@bitron.ch>
1041 * configure.ac: remove AM_MAINTAINER_MODE to always rebuild scanner and
1044 2006-11-09 Raffaele Sandrini <rasa@gmx.ch>
1046 * vapi/glib-2.0.vala: add GArray and GTree structures
1047 * vala/valainterfacewriter.vala: write header files attributes for
1050 2006-11-09 Jürg Billeter <j@bitron.ch>
1052 * vapi/libxml-2.0.vala: some fixes and additions
1054 2006-11-08 Jürg Billeter <j@bitron.ch>
1056 * vala/valacodegenerator.vala: support interfaces in header cycles
1057 * vala/valanamespace.vala: add get_interfaces method
1059 2006-11-06 Jürg Billeter <j@bitron.ch>
1061 * vala/parser.y: support unary ~ operator
1063 2006-11-06 Jürg Billeter <j@bitron.ch>
1065 * vala/valacodegenerator.vala: use g_value_set_object for interfaces
1066 * vala/valainterface.vala: implement get_type_id
1068 2006-11-02 Jürg Billeter <j@bitron.ch>
1070 * configure.ac: Post-release version bump
1072 2006-11-02 Jürg Billeter <j@bitron.ch>
1074 * NEWS: update for 0.0.5 release
1076 2006-11-02 Jürg Billeter <j@bitron.ch>
1078 * vala/valainterfacewriter.vala: write CCode.cname attribute for methods
1079 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1080 use CCode.cname attribute
1082 2006-11-02 Raffaele Sandrini <rasa@gmx.ch>
1084 * vala/valacodegenerator.vala: fix memory leak caused when container
1085 expression transfers ownership to the foreach statement
1087 2006-11-02 Jürg Billeter <j@bitron.ch>
1089 * vala/valainterfacewriter.vala: don't use weak for value types
1090 * vala/valamethod.vala: make set_cname public
1091 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1092 add Gtk.Allocation, don't use weak for value types
1094 2006-10-31 Jürg Billeter <j@bitron.ch>
1096 * vala/valacodegenerator.vala: don't add NULL to end of variable
1097 argument list for printf-style functions to reduce the number of
1098 warnings during C compilation
1099 * vala/valamethod.vala: support PrintfFormat attribute
1100 * vala/vala.h: include valareport.h
1101 * vapi/glib-2.0.vala: use PrintfFormat attribute
1103 2006-10-27 Jürg Billeter <j@bitron.ch>
1105 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1108 2006-10-26 Raffaele Sandrini <rasa@gmx.ch>
1110 * vala/valasemanticanalyzer.vala: make foreach iterator only visible to
1114 2006-10-26 Jürg Billeter <j@bitron.ch>
1116 * vala/valacodegenerator.vala: don't create empty dispose functions,
1117 support virtual methods with non-void return type
1118 * vapi/glib-2.0.vala: include glib/gstdio.h for GLib file functions
1120 2006-10-26 Jürg Billeter <j@bitron.ch>
1122 * vala/valacodegenerator.vala: explicitly cast callbacks to reduce the
1123 number of warnings during C compilation
1125 2006-10-26 Jürg Billeter <j@bitron.ch>
1127 * vala/valacodegenerator.vala: convert integer to pointer for generic
1128 parameters to reduce the number of warnings during C compilation
1130 2006-10-26 Jürg Billeter <j@bitron.ch>
1132 * vala/valacodegenerator.vala: cast object instances in return
1133 statements to reduce the number of warnings during C compilation
1135 2006-10-25 Jürg Billeter <j@bitron.ch>
1137 * vala/valacodegenerator.vala: cast object instances in comparisons to
1138 reduce the number of warnings during C compilation
1140 2006-10-25 Jürg Billeter <j@bitron.ch>
1142 * vala/valacodegenerator.vala, vala/valaarray.vala,
1143 vala/valacallback.vala, vala/valaclass.vala, vala/valadatatype.vala,
1144 vala/valaenum.vala, vala/valaflags.vala, vala/valainterface.vala,
1145 vala/valastruct.vala, vala/valatypereference.vala, vapi/glib-2.0.vala:
1146 start to use const specifier for strings to reduce number of warnings
1147 during C compilation
1149 2006-10-25 Jürg Billeter <j@bitron.ch>
1151 * vala/parser.y, vala/valacodevisitor.vala,
1152 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
1153 vala/valabaseaccess.vala: support base access
1154 * vala/vala.h, vala/Makefile.am: update
1155 * tests/test-025.vala: test base access
1156 * tests/Makefile.am: update
1158 2006-10-25 Jürg Billeter <j@bitron.ch>
1160 * configure.ac: Post-release version bump
1161 * compiler/valacompiler.vala: --version support
1162 * compiler/Makefile.am: always include config.h to keep compatibility
1163 * vapi/config.vala: add binding for config.h
1164 * vapi/Makefile.am: update
1166 2006-10-25 Jürg Billeter <j@bitron.ch>
1168 * vala/valasourcefile.vala: support dependencies on constants
1170 2006-10-24 Jürg Billeter <j@bitron.ch>
1172 * vala/valasemanticanalyzer.vala: don't crash when comparing value type
1175 2006-10-24 Jürg Billeter <j@bitron.ch>
1177 * vala/valasymbolresolver.vala: don't crash on already resolved type
1179 * vala/valasemanticanalyzer.vala: support typeof expression
1180 * vala/valacodegenerator.vala: improve support for null-terminated
1182 * vala/valainterfacewriter.vala: don't write type arguments for arrays
1184 2006-10-08 Jürg Billeter <j@bitron.ch>
1186 * vala/parser.y: support enum values
1188 2006-10-06 Jürg Billeter <j@bitron.ch>
1190 * NEWS: update for 0.0.4 release
1192 2006-10-06 Raffaele Sandrini <rasa@gmx.ch>
1194 * vapi/glib-2.0.vala, vala/valaflags.vala, vala/valaenum.vala,
1195 vala/valadatatype.vala, vala/valaarray.vala, vala/valaclass.vala,
1196 vala/valastruct.vala: add get and set value support
1197 * vala/valacodegenerator.vala: add user (arbitrary) signal support
1198 * vala/valadatatype.vala, vala/valamemorymanager.vala,
1199 vala/valastruct.vala: correctly honor ref types in type arguments
1200 * ccode/valaccodedeclaration.vala, ccode/valaccodemodifiers.vala:
1201 support register local variables
1202 * ccode/valaccodememberaccess.vala: make one line creation possible
1203 * vapi/glib-2.0.vala: fix return type of Glib.List.nth_data
1204 * tests/test-024.vala: add user signal test
1205 * tests/Makefile.am: update
1207 2006-10-05 Jürg Billeter <j@bitron.ch>
1209 * vala/parser.y, vala/valasemanticanalyzer.vala: complete support for
1210 prefix increment and decrement operator
1212 2006-10-05 Jürg Billeter <j@bitron.ch>
1214 * vala/valasemanticanalyzer.vala: transform compund assignments into
1216 * vala/valabinaryexpression.vala: add default argument to construction
1218 * tests/test-021.vala: test string += assignment
1220 2006-10-04 Jürg Billeter <j@bitron.ch>
1222 * vala/valasymbolresolver.vala: correct takes_ownership in arrays
1223 * vala/valacodegenerator.vala: add limited support for array length
1224 fields, store array length from array creation expression, copy array
1225 length in array assignments
1226 * vala/valafield.vala: support NoArrayLength attribute
1227 * compiler/valacompiler.vala: add NoArrayLength attribute to option
1230 2006-10-04 Jürg Billeter <j@bitron.ch>
1232 * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: specify
1233 array element type as type argument
1234 * vala/valacodegenerator.vala: create declarations for array length
1235 variables, iterate over arrays by index if it has known length
1236 * vala/valacharacterliteral.vala: correct return type of get_char
1237 * vala/valanamespace.vala: process enums and flags first
1238 * vala/valavariabledeclarator.vala: set parent_node of initializer, add
1240 * tests/test-023.vala: test list construction
1241 * tests/Makefile.am: update
1243 2006-10-03 Jürg Billeter <j@bitron.ch>
1245 * vala/valacodegenerator.vala: don't use InstanceCast for callbacks
1247 2006-09-28 Raffaele Sandrini <rasa@gmx.ch>
1249 * vala/valacodegenerator.vala, vala/valasemanticanalyzer.vala,
1250 vala/valamemorymanager.vala: add one dimensional array assignment
1252 * tests/test-022.vala: testcase for array creation/assignment
1253 * tests/Makefile.am: update
1255 2006-09-28 Jürg Billeter <j@bitron.ch>
1257 * vapi/glib-2.0.vala: add and improve various types
1259 2006-09-28 Jürg Billeter <j@bitron.ch>
1261 * vala/parser.y: set attributes also for non-readable properties
1262 * vala/valacodegenerator.vala: support interface signals
1263 * vala/valainvocationexpression.vala,
1264 vala/valaobjectcreationexpression.vala: fix problem when children
1265 change while iterating over them
1267 2006-09-27 Jürg Billeter <j@bitron.ch>
1269 * vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1270 vala/valamethod.vala: support InstanceByReference attribute
1271 * vapi/glib-2.0.vala: add Filename struct, fix Process methods
1272 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1273 fix static methods without parameters, add InstanceByReference
1276 2006-09-27 Jürg Billeter <j@bitron.ch>
1278 * vala/valainterface.vala: visit interface signals
1279 * vala/valainterfacewriter.vala: obey lock keyword
1280 * vapi/atk.vala, vapi/gtk+-2.0.vala: add interface signals
1282 2006-09-27 Raffaele Sandrini <rasa@gmx.ch>
1284 * vapi/glib-2.0.vala: add threading and assorted structures
1285 * vala/valamember.vala: add an additional abstraction for all members
1287 * vala/valalockstatement.vala, vala/valacodegenerator.vala,
1288 vala/scanner.l, vala/valasemanticanalyzer.vala,
1289 vala/valalockable.vala, vala/parser.y, vala/valacodevisitor.vala:
1290 add lock feature to vala
1291 * vala/valamethod.vala, vala/valafield.vala, vala/valaconstant.vala,
1292 vala/valasignal.vala, vala/valaproperty.vala: make those members
1294 * vala/valacodegenerator.vala: use member abstraction to simlify field
1295 initialisation and destruction
1296 * vala/valacodegenerator.vala: introduce new C macros VALA_FREE_CHECKED
1297 and VALA_FREE_UNCHECKED to make safe freeing code nicer
1298 * vala/vala.h: update and bring arraycreationexpression in order
1299 * vala/Makefile.am: update
1301 2006-09-27 Jürg Billeter <j@bitron.ch>
1303 * vapi/glib-2.0.vala: add Process struct with spawn functions
1305 2006-09-27 Jürg Billeter <j@bitron.ch>
1307 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1310 2006-09-26 Jürg Billeter <j@bitron.ch>
1312 * vapi/glib-2.0.vala: add string.reverse, Source.remove,
1313 Environment.get_variable, Environment.set_variable,
1314 Environment.get_current_dir, Path.is_absolute, Path.skip_root
1316 2006-09-26 Jürg Billeter <j@bitron.ch>
1318 * vala/valaassignment.vala, vala/valabinaryexpression.vala,
1319 vala/valacastexpression.vala, vala/valadostatement.vala,
1320 vala/valaexpressionstatement.vala, vala/valaforeachstatement.vala,
1321 vala/valaforstatement.vala, vala/valaifstatement.vala,
1322 vala/valainvocationexpression.vala, vala/valamemberaccess.vala,
1323 vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
1324 vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
1325 vala/valawhilestatement.vala: add missing cast
1327 2006-09-03 Jürg Billeter <j@bitron.ch>
1329 * vala/scanner.l: make character_literal stricter
1330 * vala/valacodegenerator.vala: support more method return types,
1331 support unicode character literals
1332 * vala/valacharacterliteral.vala: validate input, add get_char method
1334 2006-09-02 Jürg Billeter <j@bitron.ch>
1336 * vala/parser.y, vala/valacodecontext.vala,
1337 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1338 vala/valacodegenerator.vala, vala/valaarraycreationexpression.vala,
1339 vala/valablock.vala, vala/valacallback.vala, vala/valaclass.vala,
1340 vala/valaelementaccess.vala, vala/valafield.vala,
1341 vala/valaformalparameter.vala, vala/valaforstatement.vala,
1342 vala/valainitializerlist.vala, vala/valainterface.vala,
1343 vala/valainvocationexpression.vala, vala/valainvokable.vala,
1344 vala/valalambdaexpression.vala,
1345 vala/valalocalvariabledeclaration.vala, vala/valamemberaccess.vala,
1346 vala/valamethod.vala, vala/valanamespace.vala,
1347 vala/valaobjectcreationexpression.vala, vala/valasignal.vala,
1348 vala/valasourcefile.vala, vala/valastruct.vala,
1349 vala/valaswitchsection.vala, vala/valaswitchstatement.vala,
1350 vala/valatypereference.vala, vala/valavariabledeclarator.vala,
1351 ccode/valaccodefragment.vala, vapi/glib-2.0.vala: always default type
1353 * vala/valacodevisitor.vala, vala/valacodegenerator.vala,
1354 vala/valaexpression.vala, vala/valareturnstatement.vala: avoid
1355 unnecessary ref/unref pair in return expression
1356 * vala/valatypereference.vala: copy type arguments in copy method, too
1357 * vala/valasemanticanalyzer.vala: set type arguments in type_reference
1358 of ObjectCreationExpression
1359 * vala/valadatatype.vala: fix warning
1361 2006-09-02 Jürg Billeter <j@bitron.ch>
1363 * vala/valacodegenerator.vala: special case construction of GLib.List
1364 and GLib.SList (reported by Cayle Graumann)
1366 2006-09-02 Jürg Billeter <j@bitron.ch>
1368 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
1369 vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1370 vala/valamemberaccessibility.vala: prepare to support protected
1373 2006-09-02 Jürg Billeter <j@bitron.ch>
1375 * vala/parser.y: don't set parent_node in parser
1376 * vala/valasemanticanalyzer.vala: support string + operator
1377 * vala/valaassignment.vala, vala/valabinaryexpression.vala,
1378 vala/valacastexpression.vala, vala/valacodenode.vala,
1379 vala/valadostatement.vala, vala/valaexpressionstatement.vala,
1380 vala/valaforeachstatement.vala, vala/valaforstatement.vala,
1381 vala/valaifstatement.vala, vala/valainvocationexpression.vala,
1382 vala/valamemberaccess.vala, vala/valaobjectcreationexpression.vala,
1383 vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
1384 vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
1385 vala/valawhilestatement.vala: set parent_node of child nodes, add
1387 * vala/valanullliteral.vala: add default argument to construction method
1388 * tests/test-021.vala: test string + operator
1389 * tests/Makefile.am: update
1391 2006-09-02 Jürg Billeter <j@bitron.ch>
1393 * vala/scanner.l: support integer and floating point suffixes
1394 * vala/valasemanticanalyzer.vala: use correct type for integer and
1395 floating point literals
1396 * vala/valaintegerliteral.val, vala/valarealliteral.vala: add
1397 get_type_name method
1398 * vapi/glib-2.0.vala: add string to int64 conversion method
1400 2006-09-02 Jürg Billeter <j@bitron.ch>
1402 * vala/valasemanticanalyzer.vala: use IntegerType, FloatingType, and
1403 rank attributes to analyze arithmetic operations
1404 * vala/valacodegenerator.vala: generate C casts for explicit value-type
1406 * vala/valastruct.vala: add is_integer_type, is_floating_type, and
1407 get_rank methods, add IntegerType and FloatingType attributes
1408 * vala/valasemanticanalyzer.vala, vala/valacastexpression.vala,
1409 vala/valainstancecast.vala, ccode/valaccodecastexpression.vala: fix
1411 * vapi/glib-2.0.vala: add int16, uint16, int32, uint32, use IntegerType
1412 and FloatingType attributes
1414 2006-09-02 Jürg Billeter <j@bitron.ch>
1416 * vala/parser.y: set accessibility for constants
1417 * vala/valasemanticanalyzer.vala: set return type in property set
1419 * vala/valacodegenerator.vala: move public constants to header file
1420 * vala/valaclass.vala: don't create fields for properties in VAPI files
1421 * vala/valaconstant.vala: add access member
1423 2006-09-02 Jürg Billeter <j@bitron.ch>
1425 * vapi/cairo.vala: mark Matrix as reference type
1427 2006-08-24 Jürg Billeter <j@bitron.ch>
1429 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1430 mark virtual methods appropriately
1432 2006-08-24 Jürg Billeter <j@bitron.ch>
1434 * vala/valaattributeprocessor.vala, vala/valacodegenerator.vala,
1435 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala: add
1436 possibility to change interface type struct cname, default to `Iface'
1437 suffix (reported by Dominique Würtz)
1439 2006-08-23 Jürg Billeter <j@bitron.ch>
1441 * vala/valasemanticanalyzer.vala: support calling non-abstract interface
1443 * vala/valainterface.vala: add get_base_types method
1445 2006-08-20 Jürg Billeter <j@bitron.ch>
1447 * configure.ac: Post-release version bump, fail if flex or bison not
1450 2006-08-18 Jürg Billeter <j@bitron.ch>
1452 * NEWS: update for 0.0.3 release
1454 2006-08-18 Jürg Billeter <j@bitron.ch>
1456 * compiler/valacompiler.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala:
1457 use array length functionality
1459 2006-08-18 Jürg Billeter <j@bitron.ch>
1461 * vala/valacodegenerator.vala: support implicit array length parameter
1462 * vala/valainterfacewriter.vala, vala/valaformalparameter.vala,
1463 vala/valamethod.vala: support NoArrayLength attribute
1464 * compiler/valacompiler.vala, vapi/atk.vala, vapi/cairo.vala,
1465 vapi/gdk-2.0.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala,
1466 vapi/pango.vala: add NoArrayLength attributes
1467 * tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
1468 tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
1469 tests/test-007.vala, tests/test-008.vala, tests/test-009.vala,
1470 tests/test-010.vala, tests/test-011.vala, tests/test-012.vala,
1471 tests/test-013.vala, tests/test-014.vala, tests/test-015.vala,
1472 tests/test-016.vala, tests/test-017.vala, tests/test-018.vala,
1473 tests/test-019.vala, tests/test-020.vala: remove argc parameter
1475 2006-08-18 Jürg Billeter <j@bitron.ch>
1477 * vala/parser.y: remove read/write tokens
1478 * compiler/valacompiler.vala: support package dependencies
1480 * vapi/gtk+-2.0.deps
1481 * vapi/Makefile.am: update
1483 2006-08-18 Jürg Billeter <j@bitron.ch>
1485 * vala/parser.y, vala/valastruct.vala: support base types for structs
1486 * vala/valainterfacewriter.vala: obey set keyword
1487 * vapi/glib-2.0.vala: add SignalInvocationHint, SignalEmissionHook,
1488 SignalFlags, ValueArray, Math, Timeout, and PtrArray
1489 * vapi/cairo.vala: initial cairo binding
1490 * vapi/pango.vala, vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala:
1491 bindings generated from Pango 1.13.5, ATK 1.12.1, and GTK+ 2.10.1
1492 * vapi/Makefile.am: update
1494 2006-08-11 Raffaele Sandrini <rasa@gmx.ch>
1496 * vala/valasymbolresolver.vala, vala/valatypereference.vala,
1497 vala/valaelementaccess.vala, vala/valadatatype.vala, vala/parser.y,
1498 vala/valaarray.vala: make those classes ready to process
1499 multidimensional arrays.
1500 * vala/scanner.l: remove ARRAY_QUALIFIER token
1501 * vala/valasemanticanalyzer.vala, vala/parser.y,
1502 vala/valacodegenerator.vala, vala/valacodegenerator.vala,
1503 vala/valacodevisitor.vala: add multidimensional array support however
1504 only one dimensional arrays can be created yet
1505 * vala/Makefile.am, vala/vala.h: update
1506 * vala/valatypereference.vala: remove source reference parameter
1507 when creating from an expression
1508 * vala/valacodegenerator.vala: add support for uint, long and ulong
1511 2006-08-10 Jürg Billeter <j@bitron.ch>
1513 * vala/scanner.l: support hexadecimal and octal integer literals,
1514 support hexadecimal escape sequences, support BASE and THIS
1515 * vala/parser.y: use BASE and THIS keywords
1516 * vala/valasemanticanalyzer.vala: don't use new base keyword as variable
1518 * vala/valacodegenerator.vala: simplify code
1519 * vala/valainterfacewriter.vala: obey base keyword
1521 2006-08-10 Jürg Billeter <j@bitron.ch>
1523 * vala/valacodegenerator.vala: fix memory management in switch
1525 * tests/test-020.vala: extend switch statement test
1527 2006-08-10 Jürg Billeter <j@bitron.ch>
1529 * vala/valacodegenerator.vala: support switch statements
1530 * vala/valaswitchsection.vala: add has_default_label () and
1531 get_statements () methods
1532 * vala/valaswitchstatement.vala: add get_sections () method
1533 * ccode/valaccodedostatement.vala
1534 * ccode/Makefile.am: update
1535 * tests/test-020.vala: test switch statements
1536 * tests/Makefile.am: update
1538 2006-08-10 Jürg Billeter <j@bitron.ch>
1540 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: use
1542 * vala/valainvokable.vala
1543 * vala/valafield.vala, vala/valaformalparameter.vala,
1544 vala/valamethod.vala, valasignal.vala,
1545 vala/valavariabledeclarator.vala: implement Invokable
1546 * vala/Makefile.am: update
1548 2006-08-10 Jürg Billeter <j@bitron.ch>
1550 * vala/parser.y: support constants in namespaces and constants without
1552 * vala/valasemanticanalyzer.vala: depend on implemented interfaces
1553 * vala/valacodegenerator.vala: always include glib-object.h for
1554 interfaces, append NULL to variable argument list calls
1555 * vala/valainterfacewriter.vala: support constants and ellipsis
1557 * vala/valaconstant.vala: make initializer optional
1558 * vala/valainterface.vala: implement get_lower_case_cprefix ()
1559 * vala/valanamespace.vala: support constants
1561 2006-08-10 Jürg Billeter <j@bitron.ch>
1563 * vala/scanner.l: accept real literals with trailing dot
1564 * vala/valasymbolresolver.vala: ignore non-type symbols
1565 * vala/valacodegenerator.vala: support float and double properties,
1566 adapt to Field changes, support compound assignments in properties
1567 * vala/valainterfacewriter.vala: support ReferenceType attribute
1568 * vala/valaclass.vala: implement get_lower_case_cprefix ()
1569 * vala/valadatatype.vala: add get_lower_case_cprefix () method
1570 * vala/valafield.vala: let get_cname return full C name
1571 * vala/valamethod.vala: use DataType.get_lower_case_cprefix ()
1572 * vala/valastruct.vala: implement get_lower_case_cprefix (), add
1573 set_is_reference_type () method
1575 2006-08-09 Jürg Billeter <j@bitron.ch>
1577 * vala/parser.y: adapt to Vala.Signal change
1578 * vala/valaattributeprocessor.vala: process signal attributes
1579 * vala/valacodegenerator.vala: manage memory of element access
1580 expressions, mark get_property and set_property functions static,
1581 support signal emitter functions
1582 * vala/valacodecontext.vala: use get_cinclude_filename method
1583 * vala/valainterfacewriter.vala: use C header filename of namespace,
1584 support signals, support NoAccessorMethod attribute
1585 * vala/valadatatype.vala: add default arguments
1586 * vala/valaenum.vala: make set_cprefix method public
1587 * vala/valanamespace.vala: add get_cheader_filename and
1588 set_cheader_filename methods
1589 * vala/valasignal.vala: add has_emitter property, add process_attributes
1591 * vala/valasourcefile.vala: add get_cinclude_filename method
1592 * compiler/valacompiler.vala: adapt to SourceFile changes
1594 2006-08-05 Jürg Billeter <j@bitron.ch>
1596 * vala/valaparser.vala: only parse .vala source files
1597 * vala/valasymbolbuilder.vala, vala/valaproperty.vala: support disabling
1598 automatic property accessor generation
1599 * vala/valasemanticanalyzer.vala: fix typo
1600 * vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1601 vala/valacodecontext.vala: use correct includes for libraries
1602 * vala/valacodegenerator.vala: use get_canonical_cconstant method for
1604 * vala/valainterfacewriter.vala: support interfaces, non-null types,
1605 callbacks, and construction methods
1606 * vala/valasignal.vala: add get_canonical_cconstant method
1607 * vala/valaenum.vala, vala/valainterface.vala, vala/valanamespace.vala,
1608 vala/valastruct: add default arguments
1609 * vala/Makefile.am: install libvala.so and header files
1610 * ccode/Makefile.am: install header files
1611 * compiler/valacompiler.vala: set library name in code context
1612 * compiler/Makefile.am: adapt to build system changes
1613 * vapi/glib-2.0.vala: add skeletons for Callback, Closure, IOChannel,
1614 TimeVal, Scanner, SpawnFlags, OptionGroup, MarkupParser, and Quark
1615 * vapi/Makefile.am: add vala-1.0.vala
1617 * configure.ac: disable static library by default, add vala-1.0.pc
1618 * Makefile.am: add vala-1.0.pc
1620 2006-08-02 Jürg Billeter <j@bitron.ch>
1622 * configure.ac: Post-release version bump.
1624 2006-08-02 Jürg Billeter <j@bitron.ch>
1626 * NEWS: update for 0.0.2 release
1627 * vala/valasemanticanalyzer.vala: check for floating reference in
1628 construction methods
1629 * vala/valasourcefile.vala, vala/valacodegenerator.vala,
1630 ccode/valaccodeincludedirective.vala: differentiate between
1631 package-internal and external includes
1632 * vapi/gtk+-2.0.vala: port to construction methods
1634 2006-08-02 Jürg Billeter <j@bitron.ch>
1636 * port to construction methods
1637 * vala/valaparenthesizedexpression.vala, vala/valareport.vala,
1638 vala/valareturnstatement.vala, vala/valasourcefilecycle.vala,
1639 vala/valasourcereference.vala, vala/valatypecheck.vala,
1640 vala/valatypeofexpression.vala, vala/valatypeparameter.vala: add
1641 interface documentation, use implicit namespace specification
1642 * vala/Makefile.am: sort source file list
1644 2006-08-02 Jürg Billeter <j@bitron.ch>
1646 * vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
1647 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
1648 vala/valainterfacewriter.vala, vala/valaclass.vala,
1649 vala/valaexpressionstatement.vala, vala/valamethod.vala,
1650 vala/valaobjectcreationexpression.vala, vala/valastatement.vala,
1651 vala/valastruct.vala: add support for construction methods
1652 * vala/valabooleanliteral.vala, vala/valaexpression.vala,
1653 vala/valaintegerliteral.vala, vala/valaliteral.vala,
1654 vala/valaliteralexpression.vala, vala/valamemberaccess.vala: add
1656 * vala/valamemberaccess.vala, vala/valatypereference.vala: support
1657 storing type arguments in MemberAccess
1658 * vala/valacodenode.vala: add parent_node property
1659 * vala/parser.y, vala/valaifstatement.vala: only allow blocks as
1661 * vala/valaenum.vala: implement get_type_id method
1662 * vala/valainterfacewriter.vala: output default expressions of formal
1664 * vala/valaformalparameter.vala: visit default expression
1665 * vala/valaobjectcreationexpression.vala, vala/valanullliteral.vala,
1666 vala/valaproperty.vala, vala/valapropertyaccessor.vala: add interface
1667 documentation, use implicit namespace specification
1668 * vala/vala.h: add valaelementaccess.h and valarealliteral.h
1669 * ccode/valaccodememberaccess.vala: don't mark is_pointer as construct
1670 * vapi/glib-2.0.vala: add GValue
1671 * vapi/gtk+-2.0.vala: small updates
1673 2006-07-31 Jürg Billeter <j@bitron.ch>
1675 * vala/parser.y: support prefix increment and decrement, fix parsing
1677 * vala/valasemanticanalyzer.vala: fix some bugs in error handling,
1678 support prefix increment and decrement
1679 * vala/valacodegenerator.vala: support prefix increment and decrement
1680 * vala/valanamespace.vala: add interface documentation, use implicit
1681 namespace specification
1682 * vala/valaunaryexpression.vala: support prefix increment and decrement
1683 * ccode/valaccodeunaryexpression.vala: support prefix increment and
1685 * vapi/glib-2.0.vala: add Environment struct
1687 2006-07-27 Jürg Billeter <j@bitron.ch>
1689 * vala/scanner.l: support CASE, DEFAULT, DO, and SWITCH
1690 * vala/parser.y: support switch and do statements
1691 * vala/valacodevisitor.vala: add support for switch and do statements
1692 * vala/valadostatement.vala
1693 * vala/valaswitchlabel.vala
1694 * vala/valaswitchsection.vala
1695 * vala/valaswitchstatement.vala
1696 * vala/valastatement.vala, vala/valasymbol.vala,
1697 vala/valaunaryexpression.vala, vala/valavariabledeclarator.vala,
1698 vala/valawhilestatement.vala: add interface documentation, use
1699 implicit namespace specification
1700 * vala/vala.h, vala/Makefile.am: update
1701 * vapi/glib-2.0.vala: don't use default keyword
1703 2006-07-27 Jürg Billeter <j@bitron.ch>
1705 * vala/parser.y: support for loops with local variable declaration in
1708 2006-07-27 Jürg Billeter <j@bitron.ch>
1710 * vala/parser.y: don't require developer to explicitly write static in
1711 namespace field declarations, support type parameters in interfaces
1713 * vala/valasymbolresolver.vala: support interfaces and callbacks
1714 * vala/valasemanticanalyzer.vala: use is_subtype_of method, support
1716 * vala/valamemorymanager.vala: support callbacks in fields
1717 * vala/valacodegenerator.vala: support callbacks in fields
1718 * vala/valacallback.vala: support type parameters
1719 * vala/valaclass.vala: add is_subtype_of method
1720 * vala/valadatatype.vala: add is_subtype_of method
1721 * vala/valainterface.vala: add is_subtype_of method
1723 2006-07-26 Jürg Billeter <j@bitron.ch>
1725 * vala/scanner.l: support casting arrays
1726 * vala/parser.y: don't require developer to explicitly write static in
1727 namespace method declarations
1728 * vala/valaarray.vala: correct cname for arrays with value-type elements
1729 * vala/valacodenode.vala: save source line reference in ccodenode
1730 * ccode/valaccodelinedirective.vala
1731 * ccode/valaccodenode.vala: support source line reference
1732 * ccode/Makefile.am: update
1733 * vapi/glib-2.0.vala: add to_string methods to integer types, add size
1734 method to string, add u_sleep method to Thread, fix memory management
1735 in List and SList, add sort method to List
1737 2006-07-19 Jürg Billeter <j@bitron.ch>
1739 * vala/valatypereference.vala: use more expressive property names, add
1741 * vala/parser.y, vala/valasymbolbuilder.vala,
1742 vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
1743 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
1744 vala/valainterfacewriter.vala, vala/valasourcefile.vala,
1745 vala/valacallback.vala, vala/valaclassregisterfunction.vala,
1746 vala/valasignal.vala: adapt to changes in TypeReference
1747 * vala/valasourcefile.vala: replace public fields by properties /
1749 * vala/valacodecontext.vala: adapt to changes in SourceFile
1750 * vala/valaparser.vala: correct handling of source files without header
1752 * vala/valasymbolbuilder.vala: don't generate code for VAPI files
1753 * vala/valasemanticanalyzer.vala: report error respectively warning if
1754 method return type misses ownership transfer
1755 * vala/valainterfacewriter.vala: correct property declaration output
1756 * vala/valaparser.vala, vala/valasourcefile.vala, vala/valaliteral.vala,
1757 vala/valamemberaccessibility.vala, vala/valanamedargument.vala,
1758 vala/valanamespacereference.vala, vala/valatypereference.vala: add
1759 interface documentation, use implicit namespace specification
1761 2006-07-18 Jürg Billeter <j@bitron.ch>
1763 * vala/valasymbolresolver.vala: make sure that current_scope isn't null
1764 * vala/valamemorymanager.vala: start to support memory management with
1766 * vala/valacodegenerator.vala: support iteration over SList, properties
1767 without accessor methods
1768 * vapi/glib-2.0.vala: add string.hash (), Error fields and SList
1769 * vapi/gtk+-2.0.vala: add StatusIcon class
1770 * README: mention exceptions
1772 2006-07-16 Jürg Billeter <j@bitron.ch>
1774 * configure.ac: Post-release version bump.
1775 * vala/parser.y: remove g_object_unref call to fix crash in parsing
1777 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
1779 * vapi/glib-2.0.vala: GString enhancements
1780 * vapi/Makefile.am: dist gtk+-2.0.vala and pango.vala
1782 2006-07-15 Jürg Billeter <j@bitron.ch>
1784 * NEWS: update for 0.0.1 release
1785 * README: add introduction
1786 * COPYING: replace by LGPL
1787 * compiler/valacompiler.vala: add /usr/local/share/vala/vapi ad default
1789 * vapi/glib-2.0.vala: File and HashTable enhancements
1791 2006-07-14 Raffaele Sandrini <rasa@gmx.ch>
1793 * vala/valacodegenerator.vala, vala/valasymbolresolver.vala,
1794 vala/scanner.l, vala/valatypereference.vala,
1795 vala/valasemanticanalyzer.vala, vala/valaelementaccess.vala,
1796 vala/valadatatype.vala, vala/parser.y, vala/valaarray.vala,
1797 vala/valacodevisitor.vala, ccode/valaccodeelementaccess.vala: add
1798 element access support
1799 * vala/valasemanticanalyzer.vala: add visit_postfix_expression
1801 * tests/test-019.vala: add element access testcase
1802 * vala/Makefile.am, tests/Makefile.am, ccode/Makefile.am: update
1804 2006-07-14 Jürg Billeter <j@bitron.ch>
1806 * vala/valacodecontext.vala: ignore file-internal dependencies
1807 * vala/valasemanticanalyzer.vala: mark string literals as non-null, add
1809 * vala/valamemorymanager.vala: only check for leaks with reference
1810 types, manage memory in field initializers
1811 * vala/valacodegenerator.vala: add non-null parameter typechecks for
1812 structs, simplify ref expression if expression is known to be non-null
1813 * vapi/glib-2.0.vala: unichar, string, String, and Path enhancements,
1816 2006-07-10 Jürg Billeter <j@bitron.ch>
1818 * vala/parser.y: adapt to changes in InvocationExpression,
1819 LocalVariableDeclaration, and InitializerList
1820 * vala/valasemanticanalyzer.vala: add some implicit casts, fix assigning
1821 callback to field, adapt to changes in InvocationExpression
1822 * vala/valamemorymanager.vala: adapt to change in InvocationExpression
1823 * vala/valacodegenerator.vala: fix signal handler without parameters,
1824 fix access to value-type struct members, adapt to changes in
1825 LocalVariableDeclaration, InitializerList, and InvocationExprssion
1826 * vala/valaclass.vala: don't let private static fields influence
1827 has_private_fields, correct marshaller type name
1828 * vala/valaifstatement.vala, vala/valainitializerlist.vala,
1829 vala/valainstancecast.vala, vala/valaintegerliteral.vala,
1830 vala/valainvocationexpression.vala, vala/valaliteralexpression.vala,
1831 vala/valalocalvariabledeclaration.vala: add interface documentation,
1832 use implicit namespace specification
1833 * compiler/valacompiler.vala: fix --vapidir handling
1834 * vapi/glib-2.0.vala: add MainLoop, MainContext, IdleSource, Source, and
1837 2006-07-08 Jürg Billeter <j@bitron.ch>
1839 * vala/valasemanticanalyzer.vala: don't allow write access to read-only
1841 * vala/valacodegenerator.vala: adapt to changes in CCodeFragment and
1843 * vala/valapostfixexpression.vala, ccode/valaccodebinaryexpression.vala,
1844 ccode/valaccodeblock.vala, ccode/valaccodebreakstatement.vala,
1845 ccode/valaccodecasestatement.vala,
1846 ccode/valaccodecommaexpressoin.vala, ccode/valaccodecomment.vala,
1847 ccode/valaccodeconditionalexpression.vala,
1848 ccode/valaccodeconstant.vala, ccode/valaccodecontinuestatement.vala,
1849 ccode/valaccodedeclaration.vala, ccode/valaccodedeclarator.vala,
1850 ccode/valaccodeenum.vala, ccode/valaccodeemptystatement.vala,
1851 ccode/valaccodeexpressionstatement.vala,
1852 ccode/valaccodeformalparameter.vala, ccode/valaccodeforstatement.vala,
1853 ccode/valaccodefragment.vala, ccode/valaccodefunction.vala,
1854 ccode/valaccodefunctioncall.vala,
1855 ccode/valaccodefunctiondeclarator.vala,
1856 ccode/valaccodeidentifier.vala, ccode/valaccodeifstatement.vala,
1857 ccode/valaccodeincludedirective.vala,
1858 ccode/valaccodeinitializerlist.vala,
1859 ccode/valaccodemacroreplacement.vala,
1860 ccode/valaccodememberaccess.vala, ccode/valaccodemodifiers.vala,
1861 ccode/valaccodenewline.vala, ccode/valaccodeoncesection.vala,
1862 ccode/valaccodeparenthesizedexpression.vala,
1863 ccode/valaccodereturnstatement.vala, ccode/valaccodestatement.vala,
1864 ccode/valaccodestruct.vala, ccode/valaccodeswitchstatement.vala,
1865 ccode/valaccodeunaryexpression.vala,
1866 ccode/valaccodevariabledeclarator.vala,
1867 ccode/valaccodewhilestatement.vala, ccode/valaccodewriter.vala: add
1868 interface documentation, use implicit namespace specification
1870 2006-07-08 Jürg Billeter <j@bitron.ch>
1872 * vala/valasemanticanalyzer.vala: don't allow access to private members
1874 2006-07-08 Jürg Billeter <j@bitron.ch>
1876 * vala/valasemanticanalyzer.vala: check method signatures of overriding
1878 * vala/parser.y, vala/valaclassregisterfunction.vala,
1879 vala/valatyperegisterfunction.vala: support abstract classes
1880 * vala/valamethod.vala: add equals method
1881 * vala/valatypereference.vala: add equals method
1882 * corrects overriding methods to match signatures of overridden methods
1883 to fix build with current compiler
1885 2006-07-08 Jürg Billeter <j@bitron.ch>
1887 * vala/parser.y, vala/valacodegenerator.vala: adapt to ForStatement API
1889 * vala/valaclass.vala: make {get,set}_lower_case_csuffix methods private
1890 * vala/valaenum.vala, vala/valaenumvalue.vala,
1891 vala/valaexpressionstatement.vala, vala/valafield.vala,
1892 vala/valaflags.vala, vala/valaflagsvalue.vala,
1893 vala/valaforeachstatement.vala, vala/valaforstatement.vala: add
1894 interface documentation, use implicit namespace specification
1896 2006-07-08 Jürg Billeter <j@bitron.ch>
1898 * vala/parser.y: adapt to Method API changes
1899 * vala/valasemanticanalyzer.vala: support signals, mark private signal
1900 handlers as instance_last
1901 * vala/valamemorymanager.vala: support signals
1902 * vala/valacodegenerator.vala: support signals, methods with
1904 * vala/valaclass.vala: add get_type_id and get_marshaller_type_name
1906 * vala/valadatatype.vala: add get_marshaller_type_name method
1907 * vala/valastruct.vala: move type_id attribute to CCode, support
1908 marshaller_type_name attribute
1909 * vala/valainterfacewriter.vala, vala/valamethod.vala,
1910 vala/valastruct.vala, ccode/valaccodeexpression.vala,
1911 ccode/valaccodenode.vala: add interface documentation, use implicit
1912 namespace specification
1913 * vala/valacallback.vala, vala/valasignal.vala: improve documentation
1914 * ccode/valaccodecastexpression.vala: type cast in C code
1915 * ccode/Makefile.am: update
1916 * tests/test-018.vala: test signals
1917 * tests/Makefile.am: update
1918 * vapi/glib-2.0.vala: add type_id and marshaller_type_name attributes
1920 2006-07-07 Jürg Billeter <j@bitron.ch>
1922 * vala/valacodegenerator.vala, vala/valaclassregisterfunction.vala:
1924 * vala/parser.y, vala/valasemanticanalyzer.vala,
1925 vala/valalambdaexpression.vala: support lambda expressions with
1927 * vala/valaclassregisterfunction.vala, vala/valaemptystatement.vala,
1928 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
1929 vala/valatyperegisterfunction.vala: add interface documentation, use
1930 implicit namespace specification
1931 * tests/test-015.vala: test lambda expressions with statement body
1932 * tests/test-017.vala: test interfaces
1933 * tests/Makefile.am: update
1935 2006-07-07 Jürg Billeter <j@bitron.ch>
1937 * vala/valaconstructor.vala, vala/valacontinuestatement.vala,
1938 vala/valadeclarationstatement.vala, vala/valadestructor.vala: add
1939 interface documentation, use implicit namespace specification
1941 2006-07-07 Jürg Billeter <j@bitron.ch>
1943 * vala/valacodecontext.vala: use continue statements to decrease
1945 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
1946 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1947 vala/valacodegenerator.vala, vala/valaconditionalexpression.vala,
1948 vala/valaconstant.vala: add interface documentation, use implicit
1949 namespace specification
1950 * vala/valasemanticanalyzer.vala: check that if, while, for, and
1951 conditional expression conditions are boolean
1952 * vala/valaclass.vala: remove dummy accessor, breaks build with old
1954 * compiler/valacompiler.vala: use implicit namespace specification
1955 * tests/test-016.vala: test conditional expressions
1956 * tests/Makefile.am: update
1958 2006-07-07 Jürg Billeter <j@bitron.ch>
1960 * vala/valacodecontext.vala: add interface documentation, use implicit
1961 namespace specification
1962 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
1963 vala/valasemanticanalyzer.vala: adapt to change in CodeContext
1965 2006-07-06 Jürg Billeter <j@bitron.ch>
1967 * vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
1968 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1969 vala/valacodegenerator.vala, vala/valatypereference.vala, vala/vala.h,
1970 vala/Makefile.am: merge SimpleName into MemberAccess
1971 * vala/valasymbolresolver.vala, vala/valainterfacewriter.vala: adapt to
1973 * vala/valasemanticanalyzer.vala: support non-static lambda expressions
1974 and lambda expressions without return values
1975 * vala/valacodegenerator.vala: support conditional expressions, support
1976 lambda expressions as signal handlers, support read-only and
1977 write-only properties
1978 * vala/valacodevisitor.vala, vala/valamemorymanager.vala,
1979 vala/valaassignment.vala: visit at beginning and end
1980 * vala/valacallback.vala: add instance property
1981 * vala/valasignal.vala: add get_callback method
1982 * vala/valacastexpression.vala, vala/valacharacterliteral.vala,
1983 vala/valaclass.vala, vala/valamemberaccess.vala, vala/valasignal.vala:
1984 add interface documentation, use implicit namespace specification
1986 2006-07-05 Jürg Billeter <j@bitron.ch>
1988 * vala/parser.y: don't pass parameter list to lambda expression
1990 * vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1991 vala/valacodegenerator.vala: support static lambda expressions and
1993 * vala/valainvocationexpression.vala: visit call node before visiting
1994 begin of invocation expression
1995 * vala/valaformalparameter.vala, vala/valalambdaexpression.vala: add
1996 interface documentation, use implicit namespace specification
1997 * vala/valamethod.vala: allow nested methods
1998 * tests/test-015.vala: test lambda expressions
1999 * tests/Makefile.am: update
2001 2006-07-04 Jürg Billeter <j@bitron.ch>
2003 * vala/parser.y: support implicit namespace specification in callback
2005 * vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
2006 vala/valacodegenerator.vala: support callbacks
2007 * vala/valaassignment.vala, vala/valabinaryexpression.vala: improve
2009 * vala/valabooleanliteral.vala, vala/valabreakstatement.vala,
2010 vala/valacallback.vala: add interface documentation, use implicit
2011 namespace specification
2012 * vala/valacallback.vala: add matches_method method, mark as
2014 * ccode/valaccodetypedefinition.vala: replace typedef_name by
2015 declarator, add interface documentation, use implicit namespace
2017 * tests/test-013.vala: test break
2018 * tests/test-014.vala: test callback
2019 * tests/Makefile.am: update
2021 2006-07-04 Jürg Billeter <j@bitron.ch>
2023 * vala/valablock.vala: add interface documentation, use implicit
2024 namespace specification
2025 * tests/test-011.vala: test binary expressions
2026 * tests/test-012.vala: test blocks
2027 * configure.ac, Makefile.am, tests/Makefile.am: distribute tests
2029 2006-07-04 Jürg Billeter <j@bitron.ch>
2031 * vala/valacodevisitor.vala, vala/valaattributeprocessor.vala,
2032 vala/valabinaryexpression.vala: add interface documentation, use
2033 implicit namespace specification
2034 * vala/valaassignment.vala, vala/valaattribute.vala: documentation
2037 2006-07-04 Jürg Billeter <j@bitron.ch>
2039 * vala/valacodegenerator.vala: generate assignment with appropriate
2041 * vala/valaassignment.vala: use implicit namespace specification
2042 * ccode/valaccodeassignment.vala: support assignment operators , add
2043 interface documentation, use implicit namespace specification
2044 * tests/test-010.vala: test assignments
2046 2006-07-03 Jürg Billeter <j@bitron.ch>
2048 * vala/parser.y: support implicit namespace specification in struct,
2049 interface, enum, and flags declaration
2050 * vala/valasymbolbuilder.vala: report error when declaring non-static
2052 * vala/valasemanticanalyzer.vala: analyze return statements
2053 * vala/valacodegenerator.vala: correctly set GParamFlags for properties,
2054 initialize static variables, add preconditions to property accessors,
2055 support namespace methods
2056 * vala/valaassignment.vala, vala/valaattribute.vala: add interface
2057 documentation, use implicit namespace specification
2058 * tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
2059 tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
2060 tests/test-007.vala, tests/test-008.vala, tests/test-009.vala:
2061 update test cases to print test values
2063 2006-06-30 Jürg Billeter <j@bitron.ch>
2065 * vala/valacodenode.vala, vala/valadatatype.vala,
2066 vala/valaexpression.vala: use implicit namespace specification,
2069 2006-06-30 Jürg Billeter <j@bitron.ch>
2071 * vala/parser.y: support implicit namespace specification in class
2074 2006-06-29 Jürg Billeter <j@bitron.ch>
2076 * vala/valacodegenerator.vala, vala/valaclass.vala,
2077 vala/valadatatype.vala, vala/valastruct.vala: distinguish between
2078 ref_function/unref_function and dup_function/free_function
2079 * vala/valadatatype.vala: add interface documentation
2080 * vapi/glib-2.0.vala: use dup_function attribute, keep ref_function for
2083 2006-06-29 Jürg Billeter <j@bitron.ch>
2085 * vala/valacodenode.vala, vala/valaexpression.vala: add interface
2088 2006-06-28 Jürg Billeter <j@bitron.ch>
2090 * vala/valasymbolbuilder.vala: add private add_symbol helper method
2091 * vala/valasymbolresolver.vala: tiny refactoring of GObject lookup
2092 * vala/valasemanticanalyzer.vala: use get_parameters method of Callback
2093 * vala/valacallback.vala, vala/valaintegerliteral.vala,
2094 vala/valarealliteral.vala, vala/valastringliteral.vala: replace public
2095 fields by properties / private fields, don't mark properties as
2096 construct-only, use non-null types
2097 * vala/valaattribute.vala, vala/valacodenode.vala,
2098 vala/valaconstructor.vala, vala/valadatatype.vala,
2099 vala/valadestructor.vala, vala/valaenumvalue.vala,
2100 vala/valaexpression.vala, vala/valafield.vala,
2101 vala/valaflagsvalue.vala, vala/valaformalparameter.vala,
2102 vala/valaliteral.vala, vala/valalocalvariabledeclaration.vala,
2103 vala/valamethod.vala, vala/valanamedargument.vala,
2104 vala/valanamespace.vala, vala/valanamespacereference.vala,
2105 vala/valaproperty.vala, vala/valapropertyaccessor.vala,
2106 vala/valasignal.vala, vala/valastatement.vala,
2107 vala/valatypeparameter.vala, vala/valatypereference.vala,
2108 vala/valavariabledeclarator.vala: move source_reference to CodeNode
2110 2006-06-28 Jürg Billeter <j@bitron.ch>
2112 * vala/valabooleanliteral.vala, vala/valacharacterliteral.vala,
2113 vala/valaintegerliteral.vala, vala/valaliteral.vala,
2114 vala/valanullliteral.vala, vala/valarealliteral.vala,
2115 vala/valastringliteral.vala: move source_reference to Vala.Literal,
2116 use non-null types, don't mark properties as construct-only
2118 2006-06-26 Jürg Billeter <j@bitron.ch>
2120 * vala/parser.y: plug some memory leaks, adapt to Vala.Block changes
2121 * vala/valaattribute.vala, vala/valabinaryexpression.vala,
2122 vala/valablock.vala, vala/valabooleanexpression.vala,
2123 vala/valabreakstatement.vala, vala/valaliteral.vala,
2124 vala/valastatement.vala: replace public fields by properties / private
2125 fields, don't mark properties as construct-only, use non-null types
2126 * vala/valadatatype.vala: renamed from Vala.Type_ to Vala.DataType
2127 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
2128 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
2129 vala/valasourcefile.vala, vala/valacallback.vala, vala/valaclass.vala,
2130 vala/valaclassregisterfunction.vala, vala/valaconstant.vala,
2131 vala/valaenum.vala, vala/valaflags.vala, vala/valainstancecast.vala,
2132 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
2133 vala/valamethod.vala, vala/valastruct.vala,
2134 vala/valatypeparameter.vala, vala/valatypereference.vala,
2135 vala/valatypergisterfunction.vala: adapt to renaming of Vala.Type_ to
2137 * vala/Makefile.am: update
2139 2006-06-22 Jürg Billeter <j@bitron.ch>
2141 * vala/valaassignment.vala: don't mark properties as construct-only,
2143 * vala/valacodenode.vala: use non-null type
2144 * vala/valaexpression.vala: replace public fields by properties
2146 2006-06-22 Jürg Billeter <j@bitron.ch>
2148 * vala/parser.y: replace specialized interface member declarations by
2149 standard member declarations to allow non-abstract methods in
2151 * vala/valacodegenerator.vala: cast instance in property setter
2154 2006-06-22 Jürg Billeter <j@bitron.ch>
2156 * vala/scanner.l: support LAMBDA and CALLBACK
2157 * vala/parser.y: support callbacks and lambda expressions
2158 * vala/valacodevisitor.vala: add visit methods for callbacks and lambda
2160 * vala/valasymbolbuilder.vala: use non-null parameter types, support
2162 * vala/valasemanticanalyzer.vala: partially support interface methods,
2163 support callback invocations
2164 * vala/valamemorymanager.vala: support callback invocations
2165 * vala/valacodegenerator.vala: partially support interface methods
2166 * vala/valacallback.vala: initial implementation
2167 * vala/valacodenode.vala: replace public fields by properties
2168 * vala/valaexpression.vala: add expected_type field
2169 * vala/valainvocationexpression.vala: also visit at beginning
2170 * vala/valalambdaexpression.vala
2171 * vala/valanamespace.vala: support callbacks
2172 * vala/vala.h: update
2173 * vala/Makefile.am: update
2175 2006-06-18 Jürg Billeter <j@bitron.ch>
2177 * vala/scanner.l: support TYPEOF
2178 * vala/parser.y: support typeof expressions, out ref parameters, and
2180 * vala/valacodevisitor.vala: add visit method for typeof expressions
2181 * vala/valaattributeprocessor.vala: use non-null parameter types,
2182 support enums and properties
2183 * vala/valasemanticanalyzer.vala: support floating references
2184 * vala/valamemorymanager.vala: ignore signal connections
2185 * vala/valacodegenerator.vala: reset temp variable id at beginning of
2186 each file, fix out parameters, support properties without accessor
2187 methods, support floating references, add typeof expression, support
2188 static signal handlers
2189 * vala/valaclass.vala: use default arguments
2190 * vala/valaenum.vala: support cname, cprefix, and cheader_filename
2192 * vala/valaenumvalue.vala: use Enum.get_cprefix ()
2193 * vala/valamethod.vala: support FloatingReference attribute
2194 * vala/valanamespace.vala: use default arguments
2195 * vala/valaproperty.vala: support NoAccessorMethod attribute
2196 * vala/valastruct.vala: support type_id
2197 * vala/valatype.vala: add abstract get_type_id method
2198 * vala/valatypeofexpression.vala
2199 * vala/valatypereference.vala: add floating_reference property, correct
2200 to_string method signature
2201 * vala/vala.h: update
2202 * vala/Makefile.am: update
2203 * vapi/glib-2.0.vala: add GInitiallyUnowned
2204 * vapi/gtk+-2.0.vala: start of a GTK+ binding
2205 * vapi/pango.vala: start of a Pango binding
2207 2006-06-17 Jürg Billeter <j@bitron.ch>
2209 * vala/scanner.l: don't leak comment texts, support generic types with
2211 * vala/parser.y: plug most memory leaks
2212 * vala/valacodecontext.vala: work around memory management issues
2213 * vala/valasourcefile.vala: break reference cycles
2214 * vala/valasourcefilecycle.vala: break reference cycles
2215 * vala/valasymbolbuilder.vala: store `this` and `value` parameters in
2216 appropriate member node
2217 * vala/valasymbolresolver.vala: break reference cycle
2218 * vala/valasemanticanalyzer.vala: break reference cycle, promote local
2219 variables with ownership transferring initializer, store foreach
2220 variable declarator in statement object, assignments to properties
2221 don't take value ownership, make null type checks behave well on
2222 either side of a comparison
2223 * vala/valamemorymanager.vala: add support for named arguments,
2224 properties, and ellipsis parameter
2225 * vala/valacodegenerator.vala: add dispose function, register properties
2226 with static strings, don't leak strings when setting properties,
2227 support freeing string arrays, support freeing lists with allocated
2228 items, free local variables before return statements, free old value
2230 * vala/valainterfacewriter.vala: output more type reference information
2231 * vala/valaforeachstatement.vala: reference variable_declarator
2232 * vala/valaforstatement.vala: correct generic type arguments
2233 * vala/valamethod.vala: break reference cycle
2234 * vala/valaproperty.vala: reference this_parameter, add
2235 get_canoncial_cconstant method
2236 * vala/valapropertyaccessor.vala: reference value_parameter
2237 * vala/valasimplename.vala: remove unneeded type_argument_list
2238 parameter from constructor
2239 * vala/valasourcereference.vala: let to_string transfer ownership
2240 * vala/valastruct.vala: correct generic type argument
2241 * vala/valasymbol.vala: improve memory management
2242 * vala/valatype.vala: break reference cycles, let get_lower_case_cname
2244 * vala/valatypereference.vala: break reference cycle, use
2246 * vala/vala.h: add valaflags.h
2247 * ccode/valaccodefunction.vala: work around missing list deep copy
2248 * ccode/valaccodewriter.vala: don't manually free objects
2249 * compiler/valacompiler.vala: enable memory management by default,
2250 valac doesn't work anymore without memory management
2251 * vapi/glib-2.0.vala: add memory management information
2253 2006-06-15 Jürg Billeter <j@bitron.ch>
2255 * vala/valasemanticanalyzer.vala: add local variables to block
2256 * vala/valamemorymanager.vala: analyze local variable initializers
2257 * vala/valacodegenerator.vala: free local variables at end of block,
2258 only free non-null variables, use some strong references due to memory
2259 manager deficiencies
2260 * vala/valablock.vala: use non-null parameter types, add local variable
2262 * vala/valaenum.vala: let get_upper_case_cname transfer ownership
2263 * vala/valastruct.vala: add free_function attribute
2264 * ccode/valaccodewriter.vala: set freed values to null
2265 * vapi/glib-2.0.vala: add free functions
2267 2006-06-15 Raffaele Sandrini <rasa@gmx.ch>
2269 * vapi/libxml-2.0.vala: add basic libxml2 reader support
2270 * vapi/Makefile.am: add libxml-2.0.vala
2272 2006-06-14 Jürg Billeter <j@bitron.ch>
2274 * vala/parser.y: set is_lvalue_ref in property declarations
2275 * vala/valacodecontext.vala: use non-null parameter types
2276 * vala/valasymbolresolver.vala: fix lookup in namespaces of using
2277 directives, reset is_lvalue_ref where appropriate
2278 * vala/valasemanticanalyzer.vala: use non-null parameter types,
2279 correctly set is_ref and is_lvalue_ref in variable declarators
2280 * vala/valamemorymanager.vala: support methods which transfer ownership
2281 of arguments and or return value, analyze assignments
2282 * vala/valacodegenerator.vala: add missing reference increment calls,
2283 small memory management improvements
2284 * vala/valaclass.vala: use non-null parameter types
2285 * vala/valaexpression.vala: add ref_missing
2286 * vala/valastruct.vala: support ref_function attribute, use non-null
2288 * vala/valatype.vala: let get_upper_case_cname return ref string
2289 * vala/valatypereference.vala: add copy method
2290 * ccode/valaccodeconditionalexpression.vala
2291 * ccode/valaccodefunctioncall.vala: use non-null parameter types
2292 * ccode/Makefile.am: update
2293 * compiler/valacompiler.vala: process attributes before resolving
2294 symbols to have reference_type information available in resolver
2295 * vapi/glib-2.0.vala: add ref_function attributes to string and List,
2296 use ref parameters in List and HashTable until the compiler can handle
2299 2006-06-14 Jürg Billeter <j@bitron.ch>
2301 * vala/parser.y: set is_lvalue_ref for variables and fields
2302 * vala/valasemanticanalyzer.vala: variables and fields never transfer
2304 * vala/valamemorymanager.vala: use non-null parameter types, analyze
2306 * vala/valacodegenerator.vala: use non-null parameter types, support
2307 memory management for temporary variables in variable initializers,
2308 initialize all uninitialized references to null
2309 * vala/valareturnstatement.vala: visit end of full expression
2310 * vala/valatypereference.vala: add is_lvalue_ref property
2311 * vala/valavariabledeclarator.vala: visit end of full expression
2313 2006-06-14 Jürg Billeter <j@bitron.ch>
2315 * vala/valacodevisitor.vala: use non-null parameter types, add visit
2316 method for full expressions
2317 * vala/valasymbolresolver.vala: add some missing casts
2318 * vala/valasemanticanalyzer.vala: support memory management for
2320 * vala/valamemorymanager.vala: visitor to detect leaked references
2321 * vala/valacodegenerator.vala: add automatic memory management for
2322 temporary variables, add some missing casts
2323 * vala/valaassignment.vala: move source_reference to Expression
2324 * vala/valabinaryexpression.vala: move source_reference to Expression
2325 * vala/valacastexpression.vala: move source_reference to Expression
2326 * vala/valaconditionalexpression.vala: move source_reference to
2328 * vala/valaclass.vala: implement memory management methods
2329 * vala/valaexpression.vala: add source_reference, ref_leaked, and
2331 * vala/valaforstatement.vala: visit end of full expression
2332 * vala/valaifstatement.vala: visit end of full expression
2333 * vala/valainitializerlist.vala: move source_reference to Expression
2334 * vala/valainvocationexpression.vala: move source_reference to
2336 * vala/valaliteralexpression.vala: move source_reference to Expression
2337 * vala/valamemberaccess.vala: move source_reference to Expression
2338 * vala/valaobjectcreationexpression.vala: move source_reference to
2340 * vala/valaparenthesizedexpression.vala: move source_reference to
2342 * vala/valapostfixexpression.vala: move source_reference to Expression
2343 * vala/valasimplename.vala: move source_reference to Expression
2344 * vala/valastruct.vala: implement memory management methods
2345 * vala/valatype.vala: add abstract is_reference_counting,
2346 get_ref_function, and get_free_function methods
2347 * vala/valatypecheck.vala: move source_reference to Expression
2348 * vala/valaunaryexpression.vala: move source_reference to Expression
2349 * vala/valawhilestatement.vala: visit end of full expression
2350 * vala/Makefile.am: update
2351 * ccode/valaccodecommaexpression.vala
2352 * ccode/Makefile.am: update
2353 * compiler/valacompiler.vala: add enable-memory-management option
2354 * vapi/glib-2.0.vala: minor GType enhancements
2356 2006-06-07 Jürg Billeter <j@bitron.ch>
2358 * vala/valacodegenerator.vala: fix cname of constants, casts of self
2360 2006-06-07 Jürg Billeter <j@bitron.ch>
2362 * vala/valasemanticanalyzer.vala: add missing source dependencies
2363 * vala/valacodegenerator.vala: check parameter types at runtime
2365 2006-06-07 Jürg Billeter <j@bitron.ch>
2367 * vala/scanner.l: support REAL_LITERAL, TILDE, SIGNAL
2368 * vala/parser.y: support flags, signals, constructors, destructors, real
2369 literals, assignment operators, and non-null types
2370 * vala/valacodevisitor.vala: add visit methods for signals,
2371 constructors, destructors, and real literals
2372 * vala/valasymbolbuilder.vala: support signals, constructors,
2374 * vala/valasemanticanalyzer.vala: support constructors, real literals,
2375 and default arguments, fix lookup in namespaces of using directives
2376 * vala/valacodegenerator.vala: use default arguments and type register
2377 function classes, support constructors, interfaces, real literals,
2378 default arguments, casts, and signals, cast method arguments if
2380 * vala/valasourcefile.vala: use default arguments
2381 * vala/valaassignment.vala: add operator
2382 * vala/valacallback.vala: skeleton for callbacks
2383 * vala/valaclass.vala: add signals, constructor, and destructor
2384 * vala/valaclassregisterfunction.vala: get_type function for classes
2385 * vala/valaconstant.vala: use default arguments
2386 * vala/valaconstructor.vala
2387 * vala/valadestructor.vala
2388 * vala/valaenum.vala: use default arguments
2389 * vala/valaflags.vala
2390 * vala/valaflagsvalue.vala:
2391 * vala/valaformalparameter.vala: add default_expression
2392 * vala/valainstancecast.vala: dynamic instance cast
2393 * vala/valainterface.vala: add signals
2394 * vala/valainterfaceregisterfunction.vala: get_type function for
2396 * vala/valanamespace.vala: add flags, use default arguments
2397 * vala/valaproperty.vala: use default arguments
2398 * vala/valarealliteral.vala:
2399 * vala/valasignal.vala
2400 * vala/valastruct.vala: use default arguments
2401 * vala/valastringliteral.vala: use default arguments
2402 * vala/valatypereference.vala: add is_weak property
2403 * vala/valatyperegisterfunction.vala
2404 * vala/vala.h: update
2405 * vala/Makefile.am: update
2406 * ccode/valaccodeblock.vala: add prepend_statement method
2407 * ccode/valaccodewriter.vala: correctly indent multi-line comments
2408 * vapi/glib-2.0.vala: add float and double, use default arguments,
2409 temporarily remove astring
2411 2006-05-31 Jürg Billeter <j@bitron.ch>
2413 * vala/parser.y: support interfaces, adapt to Class/Struct/Type changes,
2414 improve error handling
2415 * vala/valacodevisitor.vala: support interfaces
2416 * vala/valasymbolbuilder.vala: improve error handling
2417 * vala/valasymbolresolver.vala: use operators to compare strings
2418 * vala/valasemanticanalyzer.vala: improve error handling, convert method
2419 argument and type mismatch warnings to errors, add skeleton for
2420 expressoin type checks, support string comparison operators
2421 * vala/valacodegenerator.vala: fix warning, create structs for
2422 interfaces, adapt to Class/Struct/Type changes, refactor and fix code
2423 in visit_simple_name and visit_member_access, use operators to compare
2425 * vala/valainterfacewriter.vala: use operators to compare strings
2426 * vala/valasourcefile.vala: fix warnings
2427 * vala/valaclass.vala: don't inherit from Struct
2428 * vala/valacodenode.vala: add error flag
2429 * vala/valaconstant.vala: add get_cname method
2430 * vala/valaenum.vala: override get_upper_case_cname method
2431 * vala/valaenumvalue.vala: adapt to Class/Struct/Type changes
2432 * vala/valafield.vala: use operators to compare strings
2433 * vala/valainterface.vala
2434 * vala/valainvocationexpression.vala: add add_argument method
2435 * vala/valamethod.vala: adapt to Class/Struct/Type changes, use
2436 operators to compare strings
2437 * vala/valanamespace.vala: support interfaces, use operators to compare
2439 * vala/valastringliteral.vala: fix warning
2440 * vala/valastruct.vala: inline visit_children method, use operators to
2442 * vala/valatype.vala: add abstract get_lower_case_cname method
2443 * vala/valatypereference.vala: add to_string method
2444 * vala/vala.h: update
2445 * vala/Makefile.am: update
2446 * vapi/glib-2.0.vala: small fixes
2448 2006-05-26 Jürg Billeter <j@bitron.ch>
2450 * vala/valasemanticanalyzer.vala: fix member access to namespaces
2451 * vala/valacodegenerator.vala: adapt to CCodeWriter changes
2452 * ccode/valaccodewriter.vala: don't touch file if nothing has changed,
2453 required to get incremental builds working
2454 * vapi/glib-2.0.vala: extend file functions
2456 * ccode/Makefile.am,vala/Makefile.am,compiler/Makefile.am: support
2459 2006-05-25 Jürg Billeter <j@bitron.ch>
2461 * vala/scanner.l: support ELLIPSIS, use g_strdup instead of strdup
2462 * vala/parser.y: support variable argument lists, type access modifiers
2463 * vala/valareport.vala: class to handle error reporting
2464 * vala/valasymbolbuilder.vala: switch to new error reporting scheme
2465 * vala/valasymbolresolver.vala: switch to new error reporting scheme
2466 * vala/valasemanticanalyzer.vala: process Constant and EnumValue symbol
2467 dependencies, check method argument types, find types of unary and
2468 binary expressions, remove dummy field, switch to new error reporting
2470 * vala/valacodegenerator.vala: support calling functions with variable
2471 argument lists, support break and continue statements, remove dummy fields,
2472 switch to new error reporting scheme
2473 * vala/valainterfacewriter.vala: visitor to write public vala api in one
2475 * vala/valasourcefile.vala: support field and property symbol
2476 dependencies, remove dummy field
2477 * vala/valaclass.vala: add is_abstract field
2478 * vala/valaenumvalue.vala: remove dummy field
2479 * vala/valaformalparameter.vala: add ellipsis property
2480 * vala/valamemberaccessibility.vala: add INTERNAL
2481 * vala/valamethod.vala: make parameters public, remove dummy field
2482 * vala/valaproperty.vala: remove dummy field
2483 * vala/valasymbol.vala: add name field and get_full_name method
2484 * vala/valatype.vala: add access field
2485 * vala/valatypereference.vala: switch to new error reporting scheme
2486 * ccode/valaccodeblock.vala: improve formatting
2487 * ccode/valaccodeifstatement.vala: improve formatting
2488 * ccode/valaccodewriter.vala: improve formatting
2489 * compiler/valacompiler.vala: add error handling, support multiple vapi
2490 directories, add --library option to generate public vala api
2491 * vapi/glib-2.0.vala: moved from bindings, add static GLib.stdout field,
2492 correctly mark functions with variable argument lists, add File.test
2495 * configure.ac,Makefile.am,ccode/Makefile.am,vala/Makefile.am,
2496 vapi/Makefile.am,compiler/Makefile.am: add build system
2498 * remove valac subdirectory: Bootstrap compiler is now obsolete.
2500 2006-05-24 Jürg Billeter <j@bitron.ch>
2502 Compiler is now self-hosting.
2504 * vala/parser.y: support type checks, field attributes, and virtual and
2505 override method modifiers
2506 * vala/valacodevisitor.vala: support type checks
2507 * vala/valasymbolbuilder.vala: correct generated property accessors
2508 * vala/valaattributeprocessor.vala: process field attributes
2509 * vala/valasemanticanalyzer.vala: support virtual methods and type
2511 * vala/valacodegenerator.vala: support properties, private fields,
2512 static fields, virtual methods, field initializers, while statements,
2513 foreach statements, instance last methods, postfix expressions, type
2515 * vala/valaclass.vala: correct source reference, add get_properties
2517 * vala/valafield.vala: visit initializer, support cname attribute
2518 * vala/valamethod.vala: support ReturnsModifiedPointer and InstanceLast
2519 attributes, add is_virtual, is_override, and base_method fields, add
2520 get_real_cname method
2521 * vala/valaproperty.vala: add get_upper_case_cname method
2522 * vala/valastruct.vala: add has_private_fields attribute, add
2524 * vala/valatypecheck.vala
2525 * vala/vala.h: update
2526 * ccode/valaccodebreakstatement.vala
2527 * ccode/valaccodecasestatement.vala
2528 * ccode/valaccodecontinuestatement.vala
2529 * ccode/valaccodedeclaration.vala: renamed from
2530 CCodeDeclarationStatement, support function declarators
2531 * ccode/valaccodedeclarator.vala: abstract base class for variable and
2532 function declarators
2533 * ccode/valaccodefunctiondeclarator.vala:
2534 * ccode/valaccodestruct.vala: support function declarations by adding
2535 add_declaration method
2536 * ccode/valaccodeswitchstatement.vala
2537 * ccode/valaccodeunaryexpression.vala: add postfix increment and
2539 * ccode/valaccodevariabledeclarator.vala: inherit from CCodeDeclarator
2540 * ccode/valaccodewhilestatement.vala
2542 2006-05-23 Jürg Billeter <j@bitron.ch>
2544 * vala/valacodevisitor.vala: support initializer lists
2545 * vala/valacodegenerator.vala: support constant arrays and initializer
2547 * vala/valaconstant.vala: visit initializer
2548 * vala/valainitializerlist.vala: add accept method
2549 * vala/valastruct.vala: visit constants later than fields due to
2550 constant initialization
2551 * vala/valatypereference.vala: add get_const_cname method
2552 * ccode/valaccodeinitializerlist.vala
2554 2006-05-22 Jürg Billeter <j@bitron.ch>
2556 * vala/parser.y: support abstract methods and static fields
2557 * vala/valasourcefile.vala: support parameter symbol dependencies
2558 * vala/valasymbolbuilder.vala: insert default body for get accessors
2559 * vala/valasemanticanalyzer.vala: add property type dependency
2560 * vala/valacodegenerator.vala: add constants, private static fields,
2561 main function, property accessors, this, casting for member access
2562 * vala/valablock.vala: add add_statement method
2563 * vala/valafield.vala: add instance field
2564 * vala/valamethod.vala: add is_abstract field
2565 * valac/generator.c: mark generated properties as writable
2567 2006-05-22 Jürg Billeter <j@bitron.ch>
2569 * vala/valacodegenerator.c: add class instance private struct, type
2570 register function, class init function, instance init function;
2571 support access to private members
2572 * ccode/valaccodedeclarationstatement.vala: support static modifier
2574 2006-05-21 Jürg Billeter <j@bitron.ch>
2576 * vala/scanner.l: support file comments, BREAK, CONTINUE
2577 * vala/parser.y: support break and continue, add more comments
2578 * vala/valacodecontext.vala: find cyclic header dependencies
2579 * vala/valasourcefile.vala: add get_namespaces method, add dependency
2580 information, add add_symbol_dependency method, add
2581 SourceFileDependencyType enum
2582 * vala/valasourcefilecycle.vala
2583 * vala/valacodevisitor.vala: support break and continue statements
2584 * vala/valaparser.vala: support file comments
2585 * vala/valasemanticanalyzer.vala: record dependency information
2586 * vala/valacodegenerator.vala: add include directives, type forward
2587 declarations, once section, enum values, method return types, and more
2589 * vala/valablock.vala, vala/valadeclarationstatement.vala,
2590 vala/valaemptystatement.vala, vala/valaexpressionstatement.vala,
2591 vala/valaforeachstatement.vala, vala/valaforstatement.vala,
2592 vala/valaifstatement.vala, vala/valareturnstatement.vala,
2593 vala/valastatement.vala, vala/valawhilestatement.vala: move
2594 source_reference property to Statement class
2595 * vala/valaclass.vala, vala/valaenum.vala, vala/valastruct.vala,
2596 vala/valatype.vala: move name, source_reference, namespace, and
2597 get_cheader_filenames to Type class
2598 * vala/valabreakstatement.vala
2599 * vala/valacontinuestatement.vala
2600 * vala/valaenum.vala: fix cname, add get_upper_case_cname method
2601 * vala/valaenumvalue.vala: add get_cname method
2602 * vala/valafield.vala: add access field
2603 * vala/valanamespace.vala: add get_structs, get_classes, and
2604 get_cheader_filenames methods, support cheader_filename attribute
2605 * vala/valastruct.vala: support cheader_filename attribute
2606 * vala/valatypereference.vala: support void cname
2607 * vala/vala.h: update
2608 * ccode/valaccodeblock.vala: support comments before statements
2609 * ccode/valaccodeenum.vala: optionally use typedef
2610 * ccode/valaccodefunction.vala: add copy method
2611 * ccode/valaccodenewline.vala
2612 * ccode/valaccodeoncesection.vala
2613 * ccode/valaccodewriter.vala: use whole line for comments
2614 * bindings/glib-2.0.vala: add cheader_filename attributes, extend string
2616 * valac/generator.c: fix private field access, include string.h
2618 2006-05-19 Jürg Billeter <j@bitron.ch>
2620 * vala/valacodegenerator.vala: include header file in corresponding
2621 source file, generate class macros and typedefs
2622 * ccode/valaccodeincludedirective.vala
2623 * ccode/valaccodemacroreplacement.vala: c macro definition
2624 * ccode/valaccodetypedefinition.vala: c typedef
2625 * bindings/glib-2.0.vala: correct comment
2627 2006-05-18 Jürg Billeter <j@bitron.ch>
2629 * vala/valacodecontext.vala: add get_source_files method
2630 * vala/valasourcefile.vala: add pkg flag
2631 * vala/valasymbolresolver.vala: use GLib.Object as default base class
2632 * vala/valacodegenerator.vala: ignore package bindings, fix names of
2634 * bindings/glib-2.0.vala: renamed from GLib.vala, add g_build_filename
2635 * compiler/valacompiler.vala: add pkg and pkgdir options
2637 2006-05-18 Jürg Billeter <j@bitron.ch>
2639 * vala/valacodegenerator.vala: add method parameters, public instance
2640 field access, invocation arguments
2641 * vala/valamethod.vala: add get_parameters method
2642 * ccode/valaccodeformalparameter.vala
2643 * ccode/valaccodefunction.vala: use CCodeFormalParameter
2644 * ccode/valaccodememberaccess.vala
2645 * valac/scanner.l: support ASSIGN_BITWISE_OR, BITWISE_OR
2646 * valac/parser.y: support bitwise or
2647 * valac/context.h: support bitwise or
2648 * valac/generator.c: support bitwise or
2650 2006-05-18 Jürg Billeter <j@bitron.ch>
2652 * vala/parser.y: support member and access modifiers, static methods
2653 * vala/valaattributeprocessor.vala: process method attributes
2654 * vala/valaclass.vala: don't set parent_type member of children
2655 * vala/valaconstant.vala: remove unnecessary parent_type member
2656 * vala/valafield.vala: remove unnecessary parent_type member
2657 * vala/valamethod.vala: support cname attribute
2658 * vala/valanamespace.vala: add methods
2659 * vala/valaproperty.vala: remove unnecessary parent_type member
2660 * vala/valastruct.vala: don't set parent_type member of children
2662 2006-05-18 Jürg Billeter <j@bitron.ch>
2664 * vala/parser.y: adapt to BinaryOperator enum changes
2665 * vala/valacodegenerator.vala: add operators to unary and binary
2667 * vala/valabinaryexpression.vala: correct enum value names
2668 * ccode/valaccodebinaryexpression.vala: add operator
2669 * ccode/valaccodeunaryexpression.vala
2671 2006-05-18 Jürg Billeter <j@bitron.ch>
2673 * vala/parser.y: support namespace attributes
2674 * vala/valaattributeprocessor.vala: process namespace and class
2676 * vala/valacodegenerator.vala: use correct symbol names
2677 * vala/valamethod.vala: add cname
2678 * vala/valanamespace.vala: add cprefix, support cprefix attribute
2679 * vala/valastruct.vala: prefix cname with namespace cprefix
2680 * bindings/GLib.vala: add tolower to unichar
2681 * valac/parser.y: rename namespace attribute cname to lower_case_cprefix
2683 2006-05-18 Jürg Billeter <j@bitron.ch>
2685 * update reference and property annotations
2686 * switch string struct to utf-8
2687 * valac/context.c: set source file in root namespace
2688 * valac/generator.c: don't include bindings stub header
2690 2006-05-17 Jürg Billeter <j@bitron.ch>
2692 * vala/valanamespace.vala: implement camel_case_to_lower_case method
2693 * bindings/GLib.vala: extend string types
2694 * valac/generator.c: support access to struct fields
2696 2006-05-17 Jürg Billeter <j@bitron.ch>
2698 * vala/parser.y: support variable declarators, subtyping, constants,
2699 properties, and enums
2700 * vala/valacodevisitor.vala: support formal parameters, property
2701 accessors, named arguments, and parenthesized expressions
2702 * vala/valasymbolbuilder.vala: visit enum values, constants, formal
2703 parameters, properties, and blocks
2704 * vala/valasymbolresolver.vala: save base class, accept void type,
2705 support type references with namespace name
2706 * vala/valasemanticanalyzer.vala: visitor to find static types of
2708 * vala/valacodegenerator.vala: support parenthesized expressions
2709 * vala/valablock.vala: add begin and end visit events
2710 * vala/valaclass.vala: support base types and properties
2711 * vala/valaenum.vala: add values
2712 * vala/valaenumvalue.vala
2713 * vala/valaexpression.vala: add generic symbol reference
2714 * vala/valaforeachstatement.vala: add begin and end visit events
2715 * vala/valaformalparameter.vala: add visit event
2716 * vala/valaliteral.vala: mark class as abstract
2717 * vala/valamethod.vala: add return_type
2718 * vala/valanamedargument.vala: add accept method
2719 * vala/valanamespace.vala: visit fields
2720 * vala/valaobjectcreationexpression.vala: visit arguments
2721 * vala/valaparenthesizedexpression.vala: add visit event
2722 * vala/valaproperty.vala: add accessors
2723 * vala/valapropertyaccessor.vala
2724 * vala/valasimplename.vala: code style update
2725 * vala/valastruct.vala: add constants
2726 * vala/valavariabledeclarator.vala: add type reference
2727 * vala/vala.h: update
2728 * compiler/valacompiler.vala: invoke SemanticAnalyzer
2729 * ccode/valaccodefragment.vala: code style update
2730 * ccode/valaccodeparenthesizedexpression.vala:
2731 * valac/parser.y: support replacement of readonly fields
2732 * valac/context.c: resolve types in operation expressions
2734 2006-05-16 Jürg Billeter <j@bitron.ch>
2736 * vala/scanner.l: fix multi-line comments
2737 * vala/valacodegenerator.vala: basic statement and expression handling
2738 * vala/valacodevisitor.vala: support variable declaration
2739 * vala/valasymbolbuilder.vala: adapt to visitor changes
2740 * vala/valaclass.vala: remove members already available in Struct
2741 * vala/valacodenode.vala: add ccodenode field
2742 * vala/valadeclarationstatement.vala: visit declaration
2743 * vala/valaexpressionstatement.vala: visit code containers after child
2745 * vala/valalocalvariabledeclaration.vala: add accept method
2746 * vala/valamethod.vala: add begin and end visit events
2747 * vala/valanamespace.vala: add lower_case_cprefix
2748 * vala/valastruct.vala: define get_upper_case_cname method
2749 * vala/valatype.vala: declare get_upper_case_cname method
2750 * vala/valatypereference.vala: add get_upper_case_cname method
2751 * vala/valavariabledeclarator.vala: add accept method
2752 * ccode/valaccodewriter.vala: formatting fixes
2753 * ccode/valaccodeassignment.vala
2754 * ccode/valaccodebinaryexpression.vala
2755 * ccode/valaccodeblock.vala: use CCodeStatement
2756 * ccode/valaccodeconstant.vala
2757 * ccode/valaccodedeclarationstatement.vala
2758 * ccode/valaccodeemptystatement.vala
2759 * ccode/valaccodeexpression.vala
2760 * ccode/valaccodeexpressionstatement.vala
2761 * ccode/valaccodeforstatement.vala
2762 * ccode/valaccodefunction.vala: formatting fixes
2763 * ccode/valaccodefunctioncall.vala
2764 * ccode/valaccodeidentifier.vala
2765 * ccode/valaccodeifstatement.vala
2766 * ccode/valaccodereturnstatement.vala
2767 * ccode/valaccodestatement.vala
2768 * ccode/valaccodestruct.vala: formatting fixes
2769 * ccode/valaccodevariabledeclarator.vala
2770 * bindings/GLib.vala: extend string types
2771 * valac/context.c: resolve types in named argument list in object
2774 2006-05-16 Jürg Billeter <j@bitron.ch>
2776 * vala/parser.y: fix unary expressions
2777 * vala/valacodegenerator.vala: add visit_block method
2778 * vala/valacodevisitor.vala: add visit methods for statements,
2779 expressions, and literals
2780 * vala/valaassignment.vala: add accept method
2781 * vala/valabinaryexpression.vala: add accept method
2782 * vala/valablock.vala: add accept method
2783 * vala/valabooleanliteral.vala: add accept method
2784 * vala/valacastexpression.vala: add accept method
2785 * vala/valacharacterliteral.vala: add accept method
2786 * vala/valaconditionalexpression.vala: add accept method
2787 * vala/valaconstant.vala: visit code containers after child elements
2788 * vala/valadeclarationstatement.vala: add accept method
2789 * vala/valaemptystatement.vala: add accept method
2790 * vala/valaexpressionstatement.vala: add accept method
2791 * vala/valafield.vala: visit code containers after child elements
2792 * vala/valaforeachstatement.vala: add accept method
2793 * vala/valaformalparameter.vala: add accept method
2794 * vala/valaforstatement.vala: add accept method
2795 * vala/valaifstatement.vala: add accept method
2796 * vala/valaintegerliteral.vala: add accept method
2797 * vala/valainvocationexpression.vala: add accept method
2798 * vala/valaliteralexpression.vala: add accept method
2799 * vala/valamemberaccess.vala: add accept method
2800 * vala/valamethod.vala: add accept method
2801 * vala/valanullliteral.vala: add accept method
2802 * vala/valaobjectcreationexpression.vala: add accept method
2803 * vala/valaparenthesizedexpression.vala: add accept method
2804 * vala/valapostfixexpression.vala: add accept method
2805 * vala/valareturnstatement.vala: add accept method
2806 * vala/valasimplename.vala: add accept method
2807 * vala/valastringliteral.vala: add accept method
2808 * vala/valaunaryexpression.vala: fix constructor, add accept method
2809 * vala/valawhilestatement.vala: add accept method
2810 * ccode/valaccodefunction.vala: renamed from CCodeMethod
2812 2006-05-16 Jürg Billeter <j@bitron.ch>
2814 * vala/parser.y: support logical AND and OR expressions, conditional
2815 expressions, assignments, constants, method parameters, and properties
2816 * vala/valacodevisitor.vala: add constant and property visits
2817 * vala/valaassignment.vala
2818 * vala/valabinaryexpression.vala: add bitwise xor, AND, and OR
2819 * vala/valaconditionalexpression.vala
2820 * vala/valaconstant.vala
2821 * vala/valaformalparameter.vala
2822 * vala/valainitializerlist.vala
2823 * vala/valamemberaccess.vala: add source_reference
2824 * vala/valamethod.vala: add parameters
2825 * vala/valaproperty.vala
2826 * vala/vala.h: update
2828 2006-05-16 Jürg Billeter <j@bitron.ch>
2830 * vala/parser.y: support member access, multiplicative, additive, shift,
2831 equality, relational, and bitwise expressions
2832 * vala/valabinaryexpression.vala
2833 * vala/valamemberaccess.vala: add constructor
2834 * vala/vala.h: update
2836 2006-05-15 Jürg Billeter <j@bitron.ch>
2838 * vala/scanner.l: support assign operators
2839 * vala/parser.y: support assign operators and attributes
2840 * vala/valaattributeprocessor.vala: visitor to process compiler
2842 * vala/valacodegenerator.vala: support structs, enums, and methods
2843 * vala/valacodenode.vala: support attributes
2844 * vala/valaattribute.vala
2845 * vala/valamemberaccessibility.vala
2846 * vala/valamethod.vala
2847 * vala/valastruct.vala: support CCode (cname) attribute
2848 * vala/vala.h: update
2849 * compiler/valacompiler.vala: invoke AttributeProcessor
2850 * ccode/valaccodeblock.vala
2851 * ccode/valaccodeenum.vala
2852 * ccode/valaccodemethod.vala
2853 * ccode/valaccodemodifiers.vala
2854 * bindings/GLib.vala: add string cmp method
2855 * valac/scanner.l: support BITWISE_AND
2856 * valac/parser.y: support bitwise and
2857 * valac/context.h: add bitwise and
2858 * valac/generator.c: support enum dependencies and bitwise and
2860 2006-05-14 Jürg Billeter <j@bitron.ch>
2862 * vala/scanner.l: support OPEN_CAST_PARENS, IS, WHILE
2863 * vala/parser.y: support structs, enums, and fields, cast, postfix,
2864 while, ref types, and generic type parameters; fix comments
2865 * vala/valacodecontext.vala: add root symbol
2866 * vala/valasourcefile.vala: add using directives, c filenames
2867 * vala/valacodevisitor.vala: add begin and end visits for some container
2868 types, add struct, enum, field, type parameter, namespace reference,
2869 and type reference visits
2870 * vala/valaparser.vala: adapt to visitor changes
2871 * vala/valasymbolbiulder.vala: visitor to fill symbol table
2872 * vala/valasymbolresolver.vala: visitor to resolve symbol references
2873 * vala/valacodegenerator.vala: add beginning of code generation
2874 * vala/valacodenode.vala: add symbol reference
2875 * vala/valacastexpression.vala
2876 * vala/valaclass.vala: derive from struct
2877 * vala/valaenum.vala
2878 * vala/valaexpression.vala: add static_type, field_reference, and
2879 method_reference fields
2880 * vala/valafield.vala
2881 * vala/valamemberaccess.vala
2882 * vala/valanamespace.vala: add structs, enums, and fields
2883 * vala/valanamespacereference.vala
2884 * vala/valapostfixexpression.vala
2885 * vala/valasourcereference.vala: adapt to comment changes
2886 * vala/valastringliteral.vala: add eval method
2887 * vala/valastruct.vala
2888 * vala/valasymbol.vala
2889 * vala/valatype.vala
2890 * vala/valatypeparameter.vala:
2891 * vala/valatypereference.vala: add type, type_parameter, is_ref, and
2892 is_out fields, add get_cname method
2893 * vala/valavariabledeclarator.vala: add name and initializer fields
2894 * vala/valawhilestatement.vala:
2895 * vala/vala.h: update
2896 * compiler/valacompiler.vala: run SymbolBuilder and SymbolResolver
2897 * ccode/valaccodewriter.vala
2898 * ccode/valaccodecomment.vala
2899 * ccode/valaccodefragment.vala
2900 * ccode/valaccodenode.vala
2901 * ccode/valaccodestruct.vala
2902 * bindings/GLib.vala: add/extend ustring, Path, Object, File, HashTable
2903 * valac/scanner.l: support OPEN_CAST_PARENS, OP_AND, OP_OR, IS, WHILE
2904 * valac/parser.y: support cast, while, include_filename ccode attribute,
2905 AND and OR expressions, IS type checks, unary minus
2906 * valac/context.h: add while statements, cast and IS expressions, and
2907 AND and OR operators
2908 * valac/context.c: support cast, IS, while; fix if
2909 * valac/generator.c: support cast, IS, pointer arithmetic, namespace
2910 methods, imported include files
2911 * valac/driver.c: add symbol alias
2913 2006-05-07 Jürg Billeter <j@bitron.ch>
2915 * vala/scanner.l: tokenizer for new vala compiler
2916 * vala/parser.y: parser vor new vala compiler
2917 * vala/valablock.vala
2918 * vala/valabooleanliteral.vala
2919 * vala/valacharacterliteral.vala
2920 * vala/valaclass.vala: add methods
2921 * vala/valadeclarationstatement.vala
2922 * vala/valaemptystatement.vala
2923 * vala/valaexpression.vala
2924 * vala/valaexpressionstatement.vala
2925 * vala/valaforeachstatement.vala
2926 * vala/valaforstatement.vala
2927 * vala/valaifstatement.vala
2928 * vala/valaintegerliteral.vala
2929 * vala/valainvocationexpression.vala
2930 * vala/valaliteral.vala
2931 * vala/valaliteralexpression.vala
2932 * vala/valalocalvariabledeclaration.vala
2933 * vala/valamethod.vala
2934 * vala/valanamedargument.vala
2935 * vala/valanullliteral.vala
2936 * vala/valaobjectcreationexpression.vala
2937 * vala/valaparenthesizedexpression.vala
2938 * vala/valareturnstatement.vala
2939 * vala/valasimplename.vala
2940 * vala/valastatement.vala
2941 * vala/valastringliteral.vala
2942 * vala/valatypereference.vala
2943 * vala/valaunaryexpression.vala
2944 * vala/valavariabledeclarator.vala
2945 * vala/valacodevisitor.vala: add visit_method skeleton
2946 * vala/valacodegenerator.vala: do.
2947 * vala/vala.h: include generated header files
2948 * valac/generator.c: support bool and enum properties, support enums
2950 2006-05-06 Jürg Billeter <j@bitron.ch>
2952 * vala/valacodecontext.vala
2953 * vala/valasourcefile.vala
2954 * vala/valasourcereference.vala: filename, line, and comment container
2955 * vala/valacodenode.vala: abstract code node
2956 * vala/valanamespace.vala: namespace node
2957 * vala/valaclass.vala: class node
2958 * vala/valacodevisitor.vala: abstract syntax tree visitor
2959 * vala/valaparser.vala: vala parser
2960 * vala/valacodegenerator.vala: code generator skeleton
2961 * compiler/valacompiler.vala: compiler driver
2962 * bindings/GLib.vala: add bindings for GList and GOptionContext
2963 * valac/scanner.l: support multi-line comments, ABSTRACT, INTERFACE,
2965 * valac/parser.y: replace AT by HASH, support readonly fields
2966 * valac/context.h: small fixes
2967 * valac/context.c: small fixes
2968 * valac/generator.c: fix override methods, basic support for properties
2970 2006-05-03 Jürg Billeter <j@bitron.ch>
2972 * valac/scanner.l: support OP_NEG, CONSTRUCT, FOREACH, IN
2973 * valac/parser.y: add foreach, construct properties; merge modifiers to
2974 resolve parser conflicts
2975 * valac/context.h: merge modifiers
2976 * valac/context.c: support namespace fields, resolve types in
2977 assignments, invocations, and if, for, and foreach statements
2978 * valac/generator.c: support negation operator, inherited fields in
2979 object variables, foreach statements for arrays and GList, fix
2980 circular dependencies
2982 2006-05-02 Raffaele Sandrini <rasa@gmx.ch>
2984 * tests/test-008.vala: add tests for base fields
2985 * valac/generator.c: remove klass local variable, add support for
2988 2006-05-01 Jürg Billeter <j@bitron.ch>
2990 * valac/scanner.l: support ENUM, FLAGS, STRUCT
2991 * valac/parser.y: add structs, generic types, enums, flags, attributes,
2992 ref and out parameters
2993 * valac/context.h: add ValaFlags, ValaFlagsValue, and ValaAnnotation
2995 * valac/context.c: support bool, uint, pointer, generic types
2996 * valac/generator.h: save pointer to current struct
2997 * valac/generator.c: support structs, ReturnsModifiedPointer, include
3000 2006-04-30 Jürg Billeter <j@bitron.ch>
3002 * valac/scanner.l: support AT, CONST, VALA_FALSE, VALA_NULL, OUT, REF,
3003 THIS, VALA_TRUE, USING, VAR, LITERAL_CHARACTER
3004 * valac/parser.y: add character, boolean, and null literals, using
3005 directive, @ type qualifier, constants, ref and out variables,
3006 array element access, this access, struct and array initializer,
3008 * valac/context.h: add ValaEnum, ValaConstant, and ValaEnumValue structs
3009 * valac/context.c: support constants, struct members, enums, var type,
3011 * valac/generator.h: save pointer to current class
3012 * valac/generator.c: support constants, boolean and null literals,
3013 array element access, using directives, this access, enums, private
3014 static fields, ref and out variables, struct and array initializer,
3015 boolean, character, and null literal, var type
3017 2006-04-27 Raffaele Sandrini <rasa@gmx.ch>
3019 * tests/test-008.vala:
3020 * tests/test-009.vala: add
3024 * valac/generator.c:
3025 * valac/context.h: add field and property support (property parse only
3027 * AUTHORS: add myself
3029 2006-04-26 Jürg Billeter <j@bitron.ch>
3031 * valac/scanner.l: support OVERRIDE, VIRTUAL
3032 * valac/parser.y: add virtual methods
3033 * valac/context.h: support virtual methods, improve init and class_init
3034 * valac/context.c: set symbol in ValaMethod struct
3035 * valac/generator.c: support virtual methods
3036 * tests/test-007.vala: test virtual method declaration and invocation
3038 2006-04-26 Jürg Billeter <j@bitron.ch>
3040 * valac/scanner.l: support OPEN_BRACKET, CLOSE_BRACKET, OP_INC, OP_DEC,
3041 OP_EQ, OP_NE, OP_LE, OP_GE, OP_LT, OP_GT, MINUS, STAR, DIV, ELSE, FOR,
3043 * valac/parser.y: add array type references, equality expressions,
3044 relational expressions, multiplicative expressions, postfix
3045 operations, object creation, if conditionals, for loops
3046 * valac/context.h: add ValaNamedArgument struct, support if and for
3048 * valac/context.c: resolve types in object creation expressions of
3049 variable initializers
3050 * valac/generator.c: support array type references, init and class_init
3051 methods, more operations, object creation, for loops, if conditionals,
3052 call g_type_init in main
3053 * tests/test-006.vala: test instance method invocation, object creation,
3054 for loop, if conditional, multiplicative expression
3056 2006-04-25 Jürg Billeter <j@bitron.ch>
3058 * valac/parser.y: save cname in class, save location of statements and
3060 * valac/context.h: add ValaStruct struct
3061 * valac/context.c: support symbols from methods and structs, add int
3062 and string fundamental types, resolve types in local variable
3064 * valac/generator.h: save pointer to current method block
3065 * valac/generator.c: add special handling for main method, basic support
3066 for method invocations, literals, member access, simple names,
3067 additive expressions, return statments, blocks
3068 * tests/test-005.vala: test static method invocation, literal integer,
3069 simple name, additive expression, return statement, block, main method
3071 2006-04-24 Jürg Billeter <j@bitron.ch>
3073 * valac/scanner.l: support single-line comments, ASSIGN, PLUS, RETURN,
3074 LITERAL_INTEGER, LITERAL_STRING
3075 * valac/parser.y: add basic statements and expressions
3076 * valac/context.h: add ValaStatement, ValaVariableDeclaration,
3077 ValaVariableDeclarator, and ValaExpression structs
3078 * valac/context.c: remove unreachable line
3080 2006-04-24 Jürg Billeter <j@bitron.ch>
3082 * valac/scanner.l: set token location, support OPEN_PARENS,
3083 CLOSE_PARENS, SEMICOLON, PUBLIC, STATIC
3084 * valac/parser.y: save symbol location, output exact error location,
3085 support method declarations
3086 * valac/context.h: add ValaLocation, ValaMethod, and ValaFormalParameter
3087 structs, add location to ValaClass and ValaTypeReference structs
3088 * valac/context.c: output error location, support method declarations
3089 * valac/generator.c: support method declarations
3090 * valac/driver.c: add comment
3091 * tests/test-004.vala: test method declaration
3093 2006-04-22 Jürg Billeter <j@bitron.ch>
3095 * valac/scanner.l: support DOT, COLON, and COMMA
3096 * valac/parser.y: save lower and upper case cnames in namespace and
3097 class objects, support base classes
3098 * valac/context.h: add ValaSymbol and ValaTypeReference structs, add
3099 cnames to ValaNamespace and ValaClass structs
3100 * valac/context.c: add symbol handling, type resolving, set cnames in
3102 * valac/generator.c: remove cname generation, support base classes
3103 * valac/driver.c: add symbols and resolve types
3104 * tests/test-003.vala: test base class