1 2007-07-09 Jürg Billeter <j@bitron.ch>
3 * vala/valainterfacewriter.vala: write static delegate instead of
5 * tests/test-014.vala, tests/test-015.vala, vapi/atk.vala,
6 vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gio-standalone.vala,
7 vapi/gtk+-2.0.vala, vapi/hal.vala, vapi/pango.vala, vapi/vte.vala: use
8 static delegate instead of callback
10 2007-07-09 Jürg Billeter <j@bitron.ch>
12 * vala/scanner.l, vala/parser.y: support delegate keyword and optional
13 modifiers to declare callbacks
15 2007-07-09 Jürg Billeter <j@bitron.ch>
17 * vala/parser.y: support # modifier to transfer ownership in method
20 2007-07-05 Jürg Billeter <j@bitron.ch>
22 * vapi/glib-2.0.vala: fix TimeVal binding
23 * vapi/dbus-glib-1.vala, vapi/hal.deps, vapi/hal.vala: add experimental
25 * vapi/Makefile.am: update
27 2007-07-04 Jürg Billeter <j@bitron.ch>
29 * vapi/glib-2.0.vala: update to new GRegex API
31 2007-07-03 Jürg Billeter <j@bitron.ch>
33 * vala/valainterfacewriter.vala: write cprefix and lower_case_cprefix
34 of namespaces and write cheader_filename of interfaces
35 * vala/valanamespace.vala: make set_cprefix and set_lower_case_cprefix
37 * ccode/valaccodewriter.vala, vala/valainterfacewriter.vala,
38 gobject/valaccodecompiler.vala, compiler/valacompiler.vala,
39 vapi/glib-2.0.vala, vapigen/valagidlparser.vala,
40 vapigen/valavapigen.vala: split GLib.File into GLib.FileStream and
41 GLib.FileUtils to not conflict with GVFS
42 * vala/valagidlparser.vala: improve support for GVFS
43 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
45 * vapi/gio-standalone.vala, vapi/packages/gio-standalone/: add
46 experimental VAPI for GVFS
47 * vapi/Makefile.am: update
49 2007-07-01 Jürg Billeter <j@bitron.ch>
51 * vapi/glib-2.0.vala: add more string utility functions and GDate
52 support, based on patch by Michael Lawrence, fixes bug 452015
54 2007-07-01 Jürg Billeter <j@bitron.ch>
56 * vala/parser.y, vala/valasymbolbuilder.vala,
57 vala/valasymbolresolver.vala, vala/valaenum.vala: add basic support
60 2007-06-30 Jürg Billeter <j@bitron.ch>
62 * vala/valasymbolbuilder.vala: fix current_symbol handling in
63 visit_property_accessor
64 * vapigen/valagidlparser.vala: add missing NoArrayLength attribute,
65 support hiding signals
66 * vapi/glib-2.0.vala: add GConnectFlags
67 * vapi/packages/pango/pango.gidl, vapi/pango.vala: updated to
69 * vapi/packages/gdk-2.0/gdk-2.0.gidl,
70 vapi/packages/gtk+-2.0/gtk+-2.0.gidl,
71 vapi/packages/gtk+-2.0/gtk+-2.0.metadata, vapi/gdk-2.0.vala,
72 vapi/gtk+-2.0.vala: updated to GTK+ 2.11.4, some small
73 GtkTreeModel/GtkTreeStore fixes
75 2007-06-15 Jürg Billeter <j@bitron.ch>
77 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
78 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
79 vala/valasemanticanalyzer.vala, vala/valasymbolbuilder.vala,
80 vala/valasymbolresolver.vala, vala/valaconstant.vala,
81 vala/valaconstructor.vala, vala/valacreationmethod.vala,
82 vala/valadestructor.vala, vala/valafield.vala,
83 vala/valaformalparameter.vala, vala/valamethod.vala,
84 vala/valaproperty.vala, vala/valapropertyaccessor.vala,
85 vala/valasignal.vala, gobject/valacodegenerator.vala,
86 gobject/valacodegeneratormethod.vala,
87 gobject/valacodegeneratorsignal.vala: move iteration of symbol nodes
88 from accept to accept_children method
90 2007-06-15 Jürg Billeter <j@bitron.ch>
92 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
93 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
94 vala/valaparser.vala, vala/valasemanticanalyzer.vala,
95 vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
96 vala/valacallback.vala, vala/valaclass.vala, vala/valaenum.vala,
97 vala/valaflags.vala, vala/valainterface.vala, vala/valastruct.vala,
98 gobject/valacodegenerator.class, gobject/valacodegeneratorclass.vala,
99 gobject/valacodegeneratorinterface.vala,
100 gobject/valacodegeneratorstruct.vala: move iteration of data types
101 from accept to accept_children method
103 2007-06-15 Jürg Billeter <j@bitron.ch>
105 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
106 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
107 vala/valaparser.vala, vala/valasemanticanalyzer.vala,
108 vala/valasourcefile.vala, vala/valasymbolbuilder.vala,
109 vala/valasymbolresolver.vala, vala/valacodenode.vala,
110 vala/valanamespace.vala, gobject/valacodegenerator.vala,
111 gobject/valacodegeneratorsourcefile.vala, vapigen/valagidlparser.vala:
112 move iteration of source files and namespaces from accept to
113 accept_children method
115 2007-06-15 Jürg Billeter <j@bitron.ch>
117 * vala/valacodecontext.vala, gobject/valaccodecompiler.vala,
118 compiler/valacompiler.vala: enhance commandline interface, add support
119 for invoking c compiler
120 * gobject/Makefile.am: update
121 * vapi/glib-2.0.vala: add shell-related utilities
123 2007-06-05 Jürg Billeter <j@bitron.ch>
125 * gobject/valacodegeneratorassignment.vala: correct invocation of setter
126 method of inherited properties, fixes bug 443527
127 * gobject/valacodegeneratormemberaccess.vala: remove outdated comment
129 2007-06-05 Jürg Billeter <j@bitron.ch>
131 * vala/valainvocationexpression.vala: support storing sizes of array
132 dimensions for methods returning arrays
133 * gobject/valacodegenerator.vala,
134 gobject/valacodegeneratorinvocationexpression.vala: add length
135 argument for methods returning arrays
136 * vapi/glib-2.0.vala: add missing NoArrayLength attributes
140 2007-06-05 Jürg Billeter <j@bitron.ch>
142 * gobject/valacodegenerator.vala: allow value-type arrays of unknown
143 length, assert at runtime when trying to iterate over such arrays
145 2007-05-31 Jürg Billeter <j@bitron.ch>
147 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
148 vala/valacodevisitor.vala, vala/valasizeofexpression.vala,
149 gobject/valacodegenerator.vala: support sizeof expression
150 * vala/vala.h, vala/Makefile.am: update
151 * vapi/glib-2.0.vala: add struct_size param to GLib.Source construction
154 2007-05-14 Jürg Billeter <j@bitron.ch>
156 * vala/valasemanticanalyzer.vala: improve argument checks of invocation
157 expression, fixes bug 435854
159 2007-05-10 Jürg Billeter <j@bitron.ch>
161 * ccode/valaccodeblock.vala, ccode/valaccodedeclaration.vala,
162 ccode/valaccodedeclarator.vala, ccode/valaccodefragment.vala,
163 ccode/valaccodefunctiondeclarator.vala, ccode/valaccodenode.vala,
164 ccode/valaccodeoncesection.vala, ccode/valaccodestruct.vala,
165 ccode/valaccodetypedefinition.vala,
166 ccode/valaccodevariabledeclarator.vala: separate declaration output
167 * vala/parser.y: remove comma at end of enum
168 * vala/valaclass.vala, vala/valastruct.vala: remove unused methods
169 * vala/Makefile.am: update
170 * gobject/valacodegeneratorsourcefile.vala: support declaration
172 * gobject/valaclassregisterfunction.vala,
173 gobject/valainterfaceregisterfunction.vala,
174 gobject/valatyperegisterfunction.vala: move from vala directory,
175 move interface info declarations to the beginning of the block
176 * gobject/Makefile.am: update
178 2007-05-09 Jürg Billeter <j@bitron.ch>
180 * ccode/valaccodeenum.vala: remove comma at end of generated enumerator
181 list, fixes gcc warning
183 2007-05-09 Jürg Billeter <j@bitron.ch>
185 * gobject/valacodegeneratorclass.vala: generate get_property and
186 set_property methods only when necessary, fixes bug 435848
188 2007-05-09 Jürg Billeter <j@bitron.ch>
190 * vala/parser.y: add basic checks for method modifiers, fixes bug 435853
191 * vala/vala.h: include valaflagsvalue.h
193 2007-05-09 Jürg Billeter <j@bitron.ch>
195 * vala/valanamespace.vala: iterate correctly over string in
196 camel_case_to_lower_case method, fixes bug 436760
198 2007-05-09 Jürg Billeter <j@bitron.ch>
200 * vala/valanamespace.vala: don't add default include directives for
201 VAPI files, fixes bug 436761
203 2007-05-07 Jürg Billeter <j@bitron.ch>
205 * vapi/glib-2.0.vala: correct strstr cname, patch by Zsombor
206 * vapi/gtk+-2.0.vala: add ellipsis to Gtk.ListStore.set() and
208 * vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala: update to GTK+ 2.10.12
210 2007-05-07 Jürg Billeter <j@bitron.ch>
212 * gobject/valacodegenerator.vala,
213 gobject/valacodegeneratormemberaccess.vala: ensure that local
214 variables don't use keywords in the C code
216 2007-05-07 Jürg Billeter <j@bitron.ch>
218 * vala/parser.y: declare variables at the beginning of blocks as
220 * gobject/valacodegeneratorclass.vala: avoid empty private struct
222 * vapi/glib-2.0.vala: use g_ascii_strtoll instead of strtoll
226 2007-05-03 Jürg Billeter <j@bitron.ch>
228 * gobject/valacodegenerator.vala,
229 gobject/valacodegeneratorassignment.vala,
230 gobject/valacodegeneratorclass.vala,
231 gobject/valacodegeneratorinterface.vala,
232 gobject/valacodegeneratorinvocationexpression.vala
233 gobject/valacodegeneratormemberaccess.vala,
234 gobject/valacodegeneratormethod.vala,
235 gobject/valacodegeneratorsignal.vala,
236 gobject/valacodegeneratorsourcefile.vala,
237 gobject/valacodegeneratorstruct.vala: split code generator
238 * gobject/Makefile.am, vapigen/Makefile.am: update
240 2007-05-03 Jürg Billeter <j@bitron.ch>
242 * gobject/valacodegenerator.vala: move code generator to new gobject
244 * configure.ac, Makefile.am, vala/Makefile.am, gobject/Makefile.am,
245 compiler/Makefile.am, vapi/Makefile.am: update
247 2007-05-03 Jürg Billeter <j@bitron.ch>
249 * vapi/glib-2.0.vala: GSList fixes and GIConv, patch by Michael Lawrence
251 2007-05-02 Jürg Billeter <j@bitron.ch>
253 * vapigen/gidlgen/gidlgen.in: use configured libdir, remove bashism,
254 based on patch by Mathias Hasselmann
255 * vapigen/gidlgen/Makefile.am: update
257 2007-05-02 Jürg Billeter <j@bitron.ch>
259 * gobject-introspection, vapigen, vapi/packages: move from vapigen
260 * configure.ac, Makefile.am: update
262 2007-04-30 Jürg Billeter <j@bitron.ch>
264 * configure.ac: Post-release version bump
266 2007-04-30 Jürg Billeter <j@bitron.ch>
268 * NEWS: update for 0.0.9 release
270 2007-04-30 Jürg Billeter <j@bitron.ch>
272 * vala/parser.y, vala/valasymbolbuilder.vala, vala/valaclass.vala,
273 vala/valanamespace.vala: add experimental support for class
274 declarations in multiple source files
276 2007-04-30 Jürg Billeter <j@bitron.ch>
278 * vala/valasemanticanalyzer.vala: check whether specified collection is
279 iterable in foreach statements, fixes bug 434514
281 2007-04-30 Jürg Billeter <j@bitron.ch>
283 * vala/valasemanticanalyzer.vala: allow any integer type as index in an
284 element access expression, fixes bug 434506
286 2007-04-30 Jürg Billeter <j@bitron.ch>
288 * vala/parser.y, vala/valasymbolbuilder.vala,
289 vala/valaattributeprocessor.vala, vala/valasemanticanalyzer.vala,
290 vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
291 vala/valaflags.vala: add basic support for flags, fixes bug 434511
293 2007-04-30 Jürg Billeter <j@bitron.ch>
295 * vala/valasemanticanalyzer.vala: check that void return values are not
296 used, fixes bug 434503
298 2007-04-30 Jürg Billeter <j@bitron.ch>
300 * vala/valasemanticanalyzer.vala: fix type check in relational
301 operations, fixes bug 434507
303 2007-04-30 Jürg Billeter <j@bitron.ch>
305 * vala/valacodegenerator.vala: add pointer to integer conversion in
306 foreach statements, fixes bug 433288
308 2007-04-24 Jürg Billeter <j@bitron.ch>
310 * vapi/glib-2.0.vala: add g_bit_nth_lsf, g_bit_nth_msf, and
313 2007-04-24 Jürg Billeter <j@bitron.ch>
315 * vala/valacallback.vala: add possibility to override default cname
316 * vala/valaattributeprocessor.vala: process callback attributes
317 * vala/valainterfacewriter.vala: cleanup code to write identifiers
319 2007-04-18 Jürg Billeter <j@bitron.ch>
321 * vala/valacodegenerator.vala: use const types where appropriate,
324 2007-04-18 Jürg Billeter <j@bitron.ch>
326 * vala/valacodegenerator.vala: simplify unref expression for non-null
328 * vala/valaclass.vala: don't mark fields as non-null due to
331 2007-04-12 Jürg Billeter <j@bitron.ch>
333 * vala/valatypereference.vala: add is_null property
334 * vala/valasemanticanalyzer.vala: fix type analysis in conditional and
335 parenthesized expressions, fixes bug 428368
336 * vapi/glib-2.0.vala: don't mark GLib.Object and GLib.InitiallyUnowned
339 2007-04-12 Jürg Billeter <j@bitron.ch>
341 * vala/valacodegenerator.vala: fix warning when using interface
344 2007-04-06 Jürg Billeter <j@bitron.ch>
346 * vala/scanner.l: use yyleng instead of strlen
347 * vala/valainterfacewriter.vala: don't write unnecessary attributes to
349 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
350 remove unnecessary attributes to reduce parse time
352 2007-04-05 Jürg Billeter <j@bitron.ch>
354 * vala/valacodegenerator.vala, vala/valaforstatement.vala: support
355 temporary variables in initializers and iterators of for statements
356 * vala/valacodegenerator.vala: support freeing generic types
357 * vala/parser.y, vala/valacodevisitor.vala,
358 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
359 vala/valareferencetransferexpression.vala: add reference transfer
360 expressions, e.g. `#var'
361 * vala/vala.h, vala/Makefile.am: update
363 2007-04-05 Jürg Billeter <j@bitron.ch>
365 * vala/valacodegenerator.vala: generate properties for destroy function
366 pointers in generic types
368 2007-04-05 Jürg Billeter <j@bitron.ch>
370 * vala/valacodegenerator.vala: pass destroy function pointer when
371 creating instances of generic types
372 * vala/valaclass.vala: add get_type_parameters method
374 2007-04-04 Jürg Billeter <j@bitron.ch>
376 * vala/scanner.l: improve cast support
377 * vala/valasemanticanalyzer.vala: fix ownership handling of local arrays
378 * vala/valacodegenerator.vala: skip code generation for static
379 interfaces, downgrade generic management support message to warning
380 * vala/valacallback.vala: support callbacks as property type
382 2007-04-04 Jürg Billeter <j@bitron.ch>
384 * vala/scanner.l: support casts to generic types
385 * vala/valasymbolresolver.vala, vala/valatypereference.vala: support
386 arrays of generic types
387 * vala/valasymbolresolver.vala: don't take ownership of elements of weak
389 * vala/valasemanticanalyzer.vala: accept uint as index value
390 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
391 vala/valastatement.vala: minor cleanup of creation methods
392 * vala/valacodegenerator.vala: support creation methods for structs, fix
393 pointer as return type
394 * vapi/glib-2.0.vala: add CLAMP and g_spaced_primes_closest
396 2007-04-03 Jürg Billeter <j@bitron.ch>
398 * vapi/math.vala: add mathematical functions, patch by
400 * vapi/Makefile.am: update
402 2007-04-03 Jürg Billeter <j@bitron.ch>
404 * vala/valacodegenerator.vala: initialize new array elements after
405 resizing an array, patch by Mathias Hasselmann
406 * vala/valaproperty.vala: fix for interface properties
408 2007-04-03 Jürg Billeter <j@bitron.ch>
410 * doc/valac.1, doc/Makefile.am: add manual page for valac written by
412 * Makefile.am, configure.ac: update
414 2007-04-03 Jürg Billeter <j@bitron.ch>
416 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
417 vala/valatypereference.vala: support declaration of local arrays
418 * tests/test-022.vala: test local array declaration
420 2007-04-03 Jürg Billeter <j@bitron.ch>
422 * vala/valasymbolbuilder.vala, vala/valacodegenerator.vala: some fixes
423 for abstract properties
424 * vala/valamethod.vala: improve default cname
426 2007-04-03 Jürg Billeter <j@bitron.ch>
428 * vapi/glib-2.0.vala: extend unicode support, add GRegex
430 2007-03-28 Raffaele Sandrini <rasa@gmx.ch>
432 * vapi/glib-2.0.vala: declare HashFunc and EqualFunc as callback
433 functions, patch by David Keijser
435 2007-03-25 Raffaele Sandrini <rasa@gmx.ch>
437 * vapi/vte.vala, vapi/vte.deps: add vte binding
438 * vapi/Makefile.am: update
440 2007-03-24 Raffaele Sandrini <rasa@gmx.ch>
442 * vala/valaforstatement.vala: assign parent_node to children of this
443 statement; include iterator and initializer in replacement of a child
444 node (fixes segfault using prefix increment expression in the
445 iterator of a for-statement)
447 2007-03-22 Raffaele Sandrini <rasa@gmx.ch>
449 * vala/valaflags.vala, vala/valaenum.vala, vala/valadatatype.vala,
450 vala/valastruct.vala: add support for default values of types
451 * vala/valacodegenerator.vala: use default values for initialization
452 * vapi/glib-2.0.vala: add default values for common types
454 2007-03-22 Jürg Billeter <j@bitron.ch>
456 * configure.ac: Post-release version bump
458 2007-03-22 Jürg Billeter <j@bitron.ch>
460 * NEWS: update for 0.0.8 release
461 * tests/Makefile.am: update
463 2007-03-22 Raffaele Sandrini <rasa@gmx.ch>
465 * vala/valacodegenerator.vala: fix generation of unresolvable 'memset'
466 for classes without strings.
468 2007-03-21 Raffaele Sandrini <rasa@gmx.ch>
470 * vapi/pango.vala: add Pango.Cairo and Pango.CairoFontMap
471 * vapi/pango.deps: add cairo dependency
472 * vapi/Makefile.am: update
474 2007-03-21 Jürg Billeter <j@bitron.ch>
476 * vala/valacodegenerator.vala: fix properties with interface types
477 * vala/valamemorymanager.vala: fix memory management when storing array
479 * vala/valaconstant.vala: obey overridden cprefix in namespaces
480 * vapi/config.vala: override lower_case_cprefix of namespace
482 2007-03-21 Raffaele Sandrini <rasa@gmx.ch>
484 * vala/valaconstant.vala: add '_' between namespace and name of
485 namespace constants' cname
487 2007-03-21 Jürg Billeter <j@bitron.ch>
489 * vala/valainterfacewriter.vala: minor output enhancements
490 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
491 improve handling of value-types and arrays
493 2007-03-21 Jürg Billeter <j@bitron.ch>
495 * vala/parser.y, vala/valainterface.vala: support static interfaces
496 * vala/valastruct.vala: make set_type_id public
497 * vapi/glib-2.0.vala: add GBoxed as interface
499 2007-03-21 Jürg Billeter <j@bitron.ch>
501 * vala/valastruct.vala: use pointer as default of type_id and
502 marshaller_type_name for reference types
503 * vala/valapointer.vala: implement get_type_id
505 2007-03-21 Jürg Billeter <j@bitron.ch>
507 * vala/valacodegenerator.vala: deep copy GLists if necessary, patch by
509 * vapi/glib-2.0.vala: fix some printf format strings to work on ILP32
512 2007-03-21 Jürg Billeter <j@bitron.ch>
514 * vapi/glib-2.0.vala: improve support for numeric types, patch by
516 * tests/test-030.vala, tests/test-030.out, tests/test-031.vala,
517 tests/test-031.out: test numeric types
518 * tests/testrunner.sh: use c99 and math library
519 * tests/Makefile.am: update
521 2007-03-21 Jürg Billeter <j@bitron.ch>
523 * vala/valainterface.vala: implement marshalling support
524 * vala/valacodegenerator.vala: support signals with interface parameters
526 2007-03-20 Raffaele Sandrini <rasa@gmx.ch>
528 * vapi/glib-2.0.vala: add extended runtime type support
529 * vala/parser.y: also read property modifiers in set-only properties
531 2007-03-20 Jürg Billeter <j@bitron.ch>
533 * vala/valasymbolresolver.vala: add GObject to the list of base types
534 * vapi/glib-2.0.vala: add ref and unref methods to GObject
536 2007-03-20 Jürg Billeter <j@bitron.ch>
538 * vala/valaparser.vala, vala/valasemanticanalyzer.vala,
539 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
540 vala/valacallback.vala, vala/valainvocationexpression.vala,
541 vala/valamethod.vala, vala/valaobjectcreationexpression.vala: use weak
542 local variables where appropriate
543 * vala/parser.y, vala/valasemanticanalyzer.vala: default local variables
545 * vala/valasemanticanalyzer.vala: don't promote local variables from
546 weak to strong reference
547 * vala/valacodegenerator.vala: warn when duplicating non-reference
548 counted structs implicitly
550 2007-03-20 Jürg Billeter <j@bitron.ch>
552 * tests/testrunner.sh: run with /bin/bash due to bashism, patch by
555 2007-03-20 Jürg Billeter <j@bitron.ch>
557 * vapi/glib-2.0.vala: wrap functions for escaping markup strings, patch
558 by Mathias Hasselmann
560 2007-03-20 Jürg Billeter <j@bitron.ch>
562 * vala/valacodegenerator.vala: free lists of interfaces correctly, patch
563 by Mathias Hasselmann
565 2007-03-17 Jürg Billeter <j@bitron.ch>
567 * compiler/valacompiler.vala, compiler/Makefile.am, vapi/config.vala:
568 consider install prefix when searching for packages, patch by
570 * configure.ac: add AM_PROG_CC_C_O
571 * autogen.sh, MAINTAINERS: added
572 * Makefile.am: dist MAINTAINERS
574 2007-03-17 Jürg Billeter <j@bitron.ch>
576 * vala/valasemanticanalyzer.vala, vala/valacodegnerator.vala,
577 vala/valaclassregisterfunction.vala,
578 vala/valainterfaceregisterfunction.vala,
579 vala/valatyperegisterfunction.vala, vala/valacodecontext.vala: support
580 creating GTypeModule-based plug-ins with the ModuleInit attribute
581 * vala/parser.y, vala/valacodegenerator.vala, vala/valaclass.vala:
582 support static classes
583 * vapi/glib-2.0.vala: add TypePlugin and TypeModule
585 2007-03-17 Jürg Billeter <j@bitron.ch>
587 * vala/parser.y: accept attributes without parentheses
588 * vala/valainterfacewriter.vala: don't write weak keyword for value
590 * vapi/atk.vala, vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala,
591 vapi/libxml-2.0.vala, vapi/pango.vala: update
593 2007-03-17 Jürg Billeter <j@bitron.ch>
595 * ccode/valaccodeunaryexpression.vala: support pointer indirections
596 * vala/parser.y, vala/valacodevisitor.vala,
597 vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
598 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
599 vala/valaaddressofexpression.vala, vala/valadatatype.vala,
600 vala/valapointer.vala, vala/valapointerindirection.vala,
601 vala/valatypereference.vala: support pointer-types, pointer
602 indirections, and address-of expressions
603 * vala/vala.h, vala/Makefile.am: update
605 2007-03-16 Jürg Billeter <j@bitron.ch>
607 * vala/parser.y: support weak keyword in local variable declarations
608 * vapi/glib-2.0.vala: improve GError support
610 2007-03-16 Jürg Billeter <j@bitron.ch>
612 * vala/valacodegenerator.vala: support disconnecting signals, based on
613 patch by Alexandre Moreira
614 * tests/test-018.vala, tests/test-018.out: test disconnecting signals
616 2007-03-16 Jürg Billeter <j@bitron.ch>
618 * vala/valacodegenerator.vala: fix null pointer dereference when
621 2007-03-16 Jürg Billeter <j@bitron.ch>
623 * vala/parser.y: default to strong references for method return types
624 * vala/valasymbolresolver.vala: reset TypeReference.transfers_ownership
626 * vala/valasourcefile.vala: assume ownership of include filenames
627 * vala/valainterfacewriter.vala: use weak keyword for return types
628 * vala/valacodecontext.vala, vala/valasourcefile.vala,
629 vala/valasymbolbuilder.vala, vapi/glib-2.0.vala: add weak to return
632 2007-03-11 Jürg Billeter <j@bitron.ch>
634 * vala/valasemanticanalyzer.vala: resolve generic return values
635 * vala/valamemorymanager.vala: fix check for generic method parameters
636 to support derived types
637 * vala/valainterface.vala: implement get_type_parameter_index
638 * vala/valamemberaccess.vala: visit type arguments
639 * vala/valaclassregisterfunction.vala,
640 vala/valainterfaceregisterfunction.vala,
641 vala/valatyperegisterfunction.vala: pass base_init function pointer
643 * vala/valacodegenerator.vala: fix initialization check in interface
645 * vala/valasemanticanalyzer.vala: fix prerequisite check to also accept
646 derived types of prerequisites
648 2007-03-10 Jürg Billeter <j@bitron.ch>
650 * ccode/valaccodecastexpression.vala: correct bracketing in cast
653 2007-03-10 Jürg Billeter <j@bitron.ch>
655 * vala/valacodegenerator.vala: support interface properties and signals,
656 improve support for generics
658 2007-03-10 Jürg Billeter <j@bitron.ch>
660 * vala/parser.y, vala/valasymbolbuilder.vala,
661 vala/valasemanticanalyzer.vala, vala/valaproperty.vala: support
662 abstract, virtual, and override modifiers for properties
663 * vala/parser.y: support get and set as identifiers
665 2007-03-10 Jürg Billeter <j@bitron.ch>
667 * vala/valatypereference.vala: correct cname of generic type parameters
669 2007-03-10 Jürg Billeter <j@bitron.ch>
671 * vala/valacreationmethod.vala, vala/valamethod.vala: fix overriding
672 cname of creation methods
674 2007-03-07 Jürg Billeter <j@bitron.ch>
676 * vala/valasemanticanalyzer.vala: check whether a class implements all
677 abstract methods of base classes
678 * vala/valacodenode.vala, vala/valadatatype.vala,
679 vala/valaexpression.vala, vala/valaliteral.vala: fix build with added
682 2007-03-07 Jürg Billeter <j@bitron.ch>
684 * vala/valaclass.vala: implement get_type_parameter_index
686 2007-03-07 Raffaele Sandrini <rasa@gmx.ch>
688 * vala/valasemanticanalyzer.vala: check whether a class implements all
689 methods required by its super interfaces
691 2007-03-05 Jürg Billeter <j@bitron.ch>
693 * vala/scanner.l, vala/parser.y, vala/valacatchclause.vala,
694 vala/valathrowstatement.vala, vala/valatrystatement.vala,
695 vala/valacodevisitor.vala: add exception handling support to the
697 * vala/vala.h, vala/Makefile.am: update
699 2007-03-05 Raffaele Sandrini <rasa@gmx.ch>
701 * vala/valainterfaceregisterfunction.vala: add
702 `g_type_interface_add_prerequisite' calls during interface type
704 * vala/valasemanticanalyzer.vala: add checks for consistent interface
705 prerequisites and whether classes are obeying them
707 2007-03-04 Jürg Billeter <j@bitron.ch>
709 * configure.ac: Post-release version bump
711 2007-03-04 Jürg Billeter <j@bitron.ch>
713 * NEWS: update for 0.0.7 release
715 2007-03-04 Jürg Billeter <j@bitron.ch>
717 * vala/parser.y: pack all embedded stataments in blocks
718 * vala/vala.h: update
720 2007-03-04 Jürg Billeter <j@bitron.ch>
722 * vala/valasemanticanalyzer.vala: check for inherited properties in
723 construct formal parameters
725 2007-03-04 Jürg Billeter <j@bitron.ch>
727 * vala/valasemanticanalyzer.vala: don't allow interface implementations
729 * vala/valaconstant.vala, vala/valafield.vala,
730 vala/valaformalparameter.vala, vala/valamethod.vala,
731 vala/valaproperty.vala, vala/valasignal.vala,
732 vala/valavariabledeclarator.vala: remove override from interface
735 2007-03-04 Jürg Billeter <j@bitron.ch>
737 * vala/parser.y, vala/valainterface.vala,
738 vala/valasemanticanalyzer.vala: rename base_types of interfaces to
739 prerequisites to follow GObject terminology
740 * vala/valamethod.vala, vala/valasemanticanalyzer.vala,
741 vala/valacodegenerator.vala: move interface usage part from
742 base_method to base_interface_method property
743 * vala/valasemanticanalyzer.vala: don't require interface
744 implementations to specify override
745 * vala/valacodegenerator.vala: support base access in interface
747 * tests/test-017.vala: remove override in method declaration
749 2007-03-04 Jürg Billeter <j@bitron.ch>
751 * vala/valasemanticanalyzer.vala: support lambda expressions in
753 * tests/test-029.vala: remove extra printf argument
755 2007-03-04 Raffaele Sandrini <rasa@gmx.ch>
757 * vala/valasemanticanalyzer.vala, vala/parser.y,
758 vala/valaformalparameter.vala: add support for construct formal
759 creation method parameters
760 * tests/test-029.vala, tests/test-029.out: add testcase for construct
762 * tests/Makefile.am: update
764 2007-03-04 Raffaele Sandrini <rasa@gmx.ch>
766 * vala/valaattributeprocessor.vala, vala/valacharacterliteral.vala,
767 vala/valamethod.vala, vala/valasymbolbuilder.vala,
768 vala/valacodevisitor.vala, vala/valainterfacewriter.vala,
769 vala/valamemorymanager.vala: update/fix copyright notice
771 2007-03-03 Raffaele Sandrini <rasa@gmx.ch>
773 * vala/valaattributeprocessor.vala, vala/valamethod.vala,
774 vala/valacodegenerator.vala, vala/valacreationmethod.vala,
775 vala/valasymbolbuilder.vala, vala/valasemanticanalyzer.vala,
776 vala/parser.y, vala/valacodevisitor.vala,
777 vala/valainterfacewriter.vala, vala/valamemorymanager.vala:
778 add CreationMethod type; restrict creation methods bodys to contain
779 only property assignment statements
780 * vala/valacharacterliteral.vala, vala/valacodegenerator.vala,
781 vala/valaarray.vala: fix the compiler to obey the new creation
783 * vala/Makefile.am: update
785 2007-03-03 Jürg Billeter <j@bitron.ch>
787 * vapi/atk.vala, vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala,
788 vapi/pango.vala: switch to new construction syntax
790 2007-03-03 Jürg Billeter <j@bitron.ch>
792 * vala/parser.y: remove support of old construction syntax
794 2007-03-03 Jürg Billeter <j@bitron.ch>
796 * Switch to new construction syntax
798 2007-03-03 Jürg Billeter <j@bitron.ch>
800 * vala/parser.y: support new construction syntax
801 * vala/valainterfacewriter.vala: write interface with new construction
804 2007-03-01 Jürg Billeter <j@bitron.ch>
806 * vala/valatypereference.vala: improve equality check
807 * vala/valatypeparameter.vala: add type parameter equality check
808 * vala/valasemanticanalyzer.vala: add symbol dependencies for
809 interfaces, support overriding methods of interfaces with
812 2007-02-28 Jürg Billeter <j@bitron.ch>
814 * configure.ac: Post-release version bump
816 2007-02-28 Jürg Billeter <j@bitron.ch>
818 * NEWS: update for 0.0.6 release
819 * tests/Makefile.am: correctly distribute test sources
821 2007-02-28 Jürg Billeter <j@bitron.ch>
823 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
826 2007-02-28 Jürg Billeter <j@bitron.ch>
828 * tests/test-022.vala, tests/test-022.out: test Array.resize method and
830 * vala/valacodegenerator.vala: update length when resizing arrays
832 2007-02-27 Jürg Billeter <j@bitron.ch>
834 * vala/valacodenode.vala: mark source_reference as construction property
835 to allow access in Array constructor
836 * vala/valaarraylengthfield.vala: the Array.length field
837 * vala/valaarrayresizemethod.vala: the Array.resize method
838 * vala/valaarray.vala: support arrays of generic type parameters, add
839 length field, add resize method
840 * vala/valatypereference.vala: make source reference optional
841 * vala/valatypeparameter.vala, vala/valasymbolresolver.vala,
842 vala/valasemanticanalyzer.vala: support arrays of generic type
844 * vala/valadatatype.vala, vala/valacodegenerator.vala: support
845 Array.length field and Array.resize method
846 * vala/Makefile.am: update
848 2007-02-27 Jürg Billeter <j@bitron.ch>
850 * vala/parser.y: accept interfaces with base types
852 2007-02-26 Jürg Billeter <j@bitron.ch>
854 * vala/valasymbolresolver.vala: fix error handling with unknown
857 2007-02-26 Jürg Billeter <j@bitron.ch>
859 * tests/test-028.vala, tests/test-028.out: test enums
860 * tests/Makefile.am: update
862 2007-02-26 Jürg Billeter <j@bitron.ch>
864 * tests/test-027.vala, tests/test-027.out: test postfix and prefix
866 * tests/Makefile.am: update
867 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
868 prefix and postfix expressions for properties and parenthesized
871 2007-02-25 Jürg Billeter <j@bitron.ch>
873 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: improve
874 subtyping suport for structs
876 2007-02-25 Jürg Billeter <j@bitron.ch>
878 * tests/test-026.vala, tests/test-026.out: test hidden base method
880 * tests/Makefile.am: update
881 * vala/valasemanticanalyzer.vala: correct symbol_reference for base
882 access, add current_struct field
884 2007-02-25 Jürg Billeter <j@bitron.ch>
886 * tests/test-010.vala, tests/test-010.out: enhance assignment test
887 * vala/valasemanticanalyzer.vala: correct bracketing in compound
890 2007-02-25 Jürg Billeter <j@bitron.ch>
892 * vala/valacodenode.vala: add to_string method
894 2007-02-25 Jürg Billeter <j@bitron.ch>
896 * vapi/glib-2.0.vala: improve GSource support
898 2007-02-22 Raffaele Sandrini <rasa@gmx.ch>
900 * vala/valacodegenerator.vala: don't allow NULL terminated arrays of
901 value-type structs and remove the check on such arrays in a freach
904 2007-02-21 Jürg Billeter <j@bitron.ch>
906 * vala/valacallback.vala: support using instance methods as static
909 2007-02-19 Jürg Billeter <j@bitron.ch>
911 * vapi/glib-2.0.vala: more string functions (patch by Cayle Graumann)
913 2007-02-18 Raffaele Sandrini <rasa@gmx.ch>
915 * vala/valainterfacewriter.vala: fix indentation for class definitions
917 2007-02-04 Jürg Billeter <j@bitron.ch>
919 * vapi/glib-2.0.vala: add GLib.Queue
921 2007-02-04 Jürg Billeter <j@bitron.ch>
923 * vala/valaconstant.vala: fix global constants
924 * vapi/glib-2.0.vala: add NoArrayLength attribute to Process functions
926 2007-02-04 Jürg Billeter <j@bitron.ch>
928 * vala/valacodegenerator.vala: use correct type cname in array creation
929 expression, don't assume that all string arrays own their content
931 2007-02-04 Jürg Billeter <j@bitron.ch>
933 * vala/parser.y: fix crash when parsing array creation expression
935 2006-12-23 Jürg Billeter <j@bitron.ch>
937 * vala/valaattribute.vala: add get_bool method for boolean values
938 * compiler/valacompiler.vala: print message when detecting option errors
940 2006-12-10 Jürg Billeter <j@bitron.ch>
942 * vapi/glib-2.0.vala: add message logging functions
943 * vala/valasemanticanalyzer.vala: support enum to int conversions and
945 * vala/valacodegenerator.vala: support do statements
947 2006-11-24 Jürg Billeter <j@bitron.ch>
949 * vala/valacodegenerator.vala: fix generating switch statements
951 2006-11-23 Jürg Billeter <j@bitron.ch>
953 * vala/valacodegenerator.vala: allow main methods without parameters and
954 main methods returning void, check complete signature of main method
956 2006-11-22 Jürg Billeter <j@bitron.ch>
958 * vala/parser.y, vala/valacodegenerator.vala: support enum members with
961 2006-11-22 Jürg Billeter <j@bitron.ch>
963 * vapi/glib-2.0.vala: add direct_hash and direct_equal
964 * tests/Makefile.am: distribute reference output
966 2006-11-21 Jürg Billeter <j@bitron.ch>
968 * vala/valaclass.vala, vala/valaenum.vala, vala/valafield.vala,
969 vala/valainterface.vala, vala/valanamespace.vala,
970 vala/valastruct.vala: use new attribute functionality
972 2006-11-21 Jürg Billeter <j@bitron.ch>
974 * vala/valaattribute.vala: add has_argument, get_string, and get_integer
976 * vala/valacodenode.vala: add get_attribute method
977 * vala/valamethod.vala: use new attribute functionality
979 2006-11-21 Jürg Billeter <j@bitron.ch>
981 * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: don't
982 require GLib namespace at runtime in symbol resolver and semantic
985 2006-11-21 Jürg Billeter <j@bitron.ch>
987 * tests/testrunner.sh: add test script
988 * tests/*.out: add reference output for test cases
989 * tests/Makefile.am: add test environment
991 2006-11-20 Jürg Billeter <j@bitron.ch>
993 * vala/valacodegenerator.vala: fix code generation for structs
995 2006-11-11 Jürg Billeter <j@bitron.ch>
997 * configure.ac: remove AM_MAINTAINER_MODE to always rebuild scanner and
1000 2006-11-09 Raffaele Sandrini <rasa@gmx.ch>
1002 * vapi/glib-2.0.vala: add GArray and GTree structures
1003 * vala/valainterfacewriter.vala: write header files attributes for
1006 2006-11-09 Jürg Billeter <j@bitron.ch>
1008 * vapi/libxml-2.0.vala: some fixes and additions
1010 2006-11-08 Jürg Billeter <j@bitron.ch>
1012 * vala/valacodegenerator.vala: support interfaces in header cycles
1013 * vala/valanamespace.vala: add get_interfaces method
1015 2006-11-06 Jürg Billeter <j@bitron.ch>
1017 * vala/parser.y: support unary ~ operator
1019 2006-11-06 Jürg Billeter <j@bitron.ch>
1021 * vala/valacodegenerator.vala: use g_value_set_object for interfaces
1022 * vala/valainterface.vala: implement get_type_id
1024 2006-11-02 Jürg Billeter <j@bitron.ch>
1026 * configure.ac: Post-release version bump
1028 2006-11-02 Jürg Billeter <j@bitron.ch>
1030 * NEWS: update for 0.0.5 release
1032 2006-11-02 Jürg Billeter <j@bitron.ch>
1034 * vala/valainterfacewriter.vala: write CCode.cname attribute for methods
1035 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1036 use CCode.cname attribute
1038 2006-11-02 Raffaele Sandrini <rasa@gmx.ch>
1040 * vala/valacodegenerator.vala: fix memory leak caused when container
1041 expression transfers ownership to the foreach statement
1043 2006-11-02 Jürg Billeter <j@bitron.ch>
1045 * vala/valainterfacewriter.vala: don't use weak for value types
1046 * vala/valamethod.vala: make set_cname public
1047 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1048 add Gtk.Allocation, don't use weak for value types
1050 2006-10-31 Jürg Billeter <j@bitron.ch>
1052 * vala/valacodegenerator.vala: don't add NULL to end of variable
1053 argument list for printf-style functions to reduce the number of
1054 warnings during C compilation
1055 * vala/valamethod.vala: support PrintfFormat attribute
1056 * vala/vala.h: include valareport.h
1057 * vapi/glib-2.0.vala: use PrintfFormat attribute
1059 2006-10-27 Jürg Billeter <j@bitron.ch>
1061 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1064 2006-10-26 Raffaele Sandrini <rasa@gmx.ch>
1066 * vala/valasemanticanalyzer.vala: make foreach iterator only visible to
1070 2006-10-26 Jürg Billeter <j@bitron.ch>
1072 * vala/valacodegenerator.vala: don't create empty dispose functions,
1073 support virtual methods with non-void return type
1074 * vapi/glib-2.0.vala: include glib/gstdio.h for GLib file functions
1076 2006-10-26 Jürg Billeter <j@bitron.ch>
1078 * vala/valacodegenerator.vala: explicitly cast callbacks to reduce the
1079 number of warnings during C compilation
1081 2006-10-26 Jürg Billeter <j@bitron.ch>
1083 * vala/valacodegenerator.vala: convert integer to pointer for generic
1084 parameters to reduce the number of warnings during C compilation
1086 2006-10-26 Jürg Billeter <j@bitron.ch>
1088 * vala/valacodegenerator.vala: cast object instances in return
1089 statements to reduce the number of warnings during C compilation
1091 2006-10-25 Jürg Billeter <j@bitron.ch>
1093 * vala/valacodegenerator.vala: cast object instances in comparisons to
1094 reduce the number of warnings during C compilation
1096 2006-10-25 Jürg Billeter <j@bitron.ch>
1098 * vala/valacodegenerator.vala, vala/valaarray.vala,
1099 vala/valacallback.vala, vala/valaclass.vala, vala/valadatatype.vala,
1100 vala/valaenum.vala, vala/valaflags.vala, vala/valainterface.vala,
1101 vala/valastruct.vala, vala/valatypereference.vala, vapi/glib-2.0.vala:
1102 start to use const specifier for strings to reduce number of warnings
1103 during C compilation
1105 2006-10-25 Jürg Billeter <j@bitron.ch>
1107 * vala/parser.y, vala/valacodevisitor.vala,
1108 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
1109 vala/valabaseaccess.vala: support base access
1110 * vala/vala.h, vala/Makefile.am: update
1111 * tests/test-025.vala: test base access
1112 * tests/Makefile.am: update
1114 2006-10-25 Jürg Billeter <j@bitron.ch>
1116 * configure.ac: Post-release version bump
1117 * compiler/valacompiler.vala: --version support
1118 * compiler/Makefile.am: always include config.h to keep compatibility
1119 * vapi/config.vala: add binding for config.h
1120 * vapi/Makefile.am: update
1122 2006-10-25 Jürg Billeter <j@bitron.ch>
1124 * vala/valasourcefile.vala: support dependencies on constants
1126 2006-10-24 Jürg Billeter <j@bitron.ch>
1128 * vala/valasemanticanalyzer.vala: don't crash when comparing value type
1131 2006-10-24 Jürg Billeter <j@bitron.ch>
1133 * vala/valasymbolresolver.vala: don't crash on already resolved type
1135 * vala/valasemanticanalyzer.vala: support typeof expression
1136 * vala/valacodegenerator.vala: improve support for null-terminated
1138 * vala/valainterfacewriter.vala: don't write type arguments for arrays
1140 2006-10-08 Jürg Billeter <j@bitron.ch>
1142 * vala/parser.y: support enum values
1144 2006-10-06 Jürg Billeter <j@bitron.ch>
1146 * NEWS: update for 0.0.4 release
1148 2006-10-06 Raffaele Sandrini <rasa@gmx.ch>
1150 * vapi/glib-2.0.vala, vala/valaflags.vala, vala/valaenum.vala,
1151 vala/valadatatype.vala, vala/valaarray.vala, vala/valaclass.vala,
1152 vala/valastruct.vala: add get and set value support
1153 * vala/valacodegenerator.vala: add user (arbitrary) signal support
1154 * vala/valadatatype.vala, vala/valamemorymanager.vala,
1155 vala/valastruct.vala: correctly honor ref types in type arguments
1156 * ccode/valaccodedeclaration.vala, ccode/valaccodemodifiers.vala:
1157 support register local variables
1158 * ccode/valaccodememberaccess.vala: make one line creation possible
1159 * vapi/glib-2.0.vala: fix return type of Glib.List.nth_data
1160 * tests/test-024.vala: add user signal test
1161 * tests/Makefile.am: update
1163 2006-10-05 Jürg Billeter <j@bitron.ch>
1165 * vala/parser.y, vala/valasemanticanalyzer.vala: complete support for
1166 prefix increment and decrement operator
1168 2006-10-05 Jürg Billeter <j@bitron.ch>
1170 * vala/valasemanticanalyzer.vala: transform compund assignments into
1172 * vala/valabinaryexpression.vala: add default argument to construction
1174 * tests/test-021.vala: test string += assignment
1176 2006-10-04 Jürg Billeter <j@bitron.ch>
1178 * vala/valasymbolresolver.vala: correct takes_ownership in arrays
1179 * vala/valacodegenerator.vala: add limited support for array length
1180 fields, store array length from array creation expression, copy array
1181 length in array assignments
1182 * vala/valafield.vala: support NoArrayLength attribute
1183 * compiler/valacompiler.vala: add NoArrayLength attribute to option
1186 2006-10-04 Jürg Billeter <j@bitron.ch>
1188 * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: specify
1189 array element type as type argument
1190 * vala/valacodegenerator.vala: create declarations for array length
1191 variables, iterate over arrays by index if it has known length
1192 * vala/valacharacterliteral.vala: correct return type of get_char
1193 * vala/valanamespace.vala: process enums and flags first
1194 * vala/valavariabledeclarator.vala: set parent_node of initializer, add
1196 * tests/test-023.vala: test list construction
1197 * tests/Makefile.am: update
1199 2006-10-03 Jürg Billeter <j@bitron.ch>
1201 * vala/valacodegenerator.vala: don't use InstanceCast for callbacks
1203 2006-09-28 Raffaele Sandrini <rasa@gmx.ch>
1205 * vala/valacodegenerator.vala, vala/valasemanticanalyzer.vala,
1206 vala/valamemorymanager.vala: add one dimensional array assignment
1208 * tests/test-022.vala: testcase for array creation/assignment
1209 * tests/Makefile.am: update
1211 2006-09-28 Jürg Billeter <j@bitron.ch>
1213 * vapi/glib-2.0.vala: add and improve various types
1215 2006-09-28 Jürg Billeter <j@bitron.ch>
1217 * vala/parser.y: set attributes also for non-readable properties
1218 * vala/valacodegenerator.vala: support interface signals
1219 * vala/valainvocationexpression.vala,
1220 vala/valaobjectcreationexpression.vala: fix problem when children
1221 change while iterating over them
1223 2006-09-27 Jürg Billeter <j@bitron.ch>
1225 * vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1226 vala/valamethod.vala: support InstanceByReference attribute
1227 * vapi/glib-2.0.vala: add Filename struct, fix Process methods
1228 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1229 fix static methods without parameters, add InstanceByReference
1232 2006-09-27 Jürg Billeter <j@bitron.ch>
1234 * vala/valainterface.vala: visit interface signals
1235 * vala/valainterfacewriter.vala: obey lock keyword
1236 * vapi/atk.vala, vapi/gtk+-2.0.vala: add interface signals
1238 2006-09-27 Raffaele Sandrini <rasa@gmx.ch>
1240 * vapi/glib-2.0.vala: add threading and assorted structures
1241 * vala/valamember.vala: add an additional abstraction for all members
1243 * vala/valalockstatement.vala, vala/valacodegenerator.vala,
1244 vala/scanner.l, vala/valasemanticanalyzer.vala,
1245 vala/valalockable.vala, vala/parser.y, vala/valacodevisitor.vala:
1246 add lock feature to vala
1247 * vala/valamethod.vala, vala/valafield.vala, vala/valaconstant.vala,
1248 vala/valasignal.vala, vala/valaproperty.vala: make those members
1250 * vala/valacodegenerator.vala: use member abstraction to simlify field
1251 initialisation and destruction
1252 * vala/valacodegenerator.vala: introduce new C macros VALA_FREE_CHECKED
1253 and VALA_FREE_UNCHECKED to make safe freeing code nicer
1254 * vala/vala.h: update and bring arraycreationexpression in order
1255 * vala/Makefile.am: update
1257 2006-09-27 Jürg Billeter <j@bitron.ch>
1259 * vapi/glib-2.0.vala: add Process struct with spawn functions
1261 2006-09-27 Jürg Billeter <j@bitron.ch>
1263 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1266 2006-09-26 Jürg Billeter <j@bitron.ch>
1268 * vapi/glib-2.0.vala: add string.reverse, Source.remove,
1269 Environment.get_variable, Environment.set_variable,
1270 Environment.get_current_dir, Path.is_absolute, Path.skip_root
1272 2006-09-26 Jürg Billeter <j@bitron.ch>
1274 * vala/valaassignment.vala, vala/valabinaryexpression.vala,
1275 vala/valacastexpression.vala, vala/valadostatement.vala,
1276 vala/valaexpressionstatement.vala, vala/valaforeachstatement.vala,
1277 vala/valaforstatement.vala, vala/valaifstatement.vala,
1278 vala/valainvocationexpression.vala, vala/valamemberaccess.vala,
1279 vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
1280 vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
1281 vala/valawhilestatement.vala: add missing cast
1283 2006-09-03 Jürg Billeter <j@bitron.ch>
1285 * vala/scanner.l: make character_literal stricter
1286 * vala/valacodegenerator.vala: support more method return types,
1287 support unicode character literals
1288 * vala/valacharacterliteral.vala: validate input, add get_char method
1290 2006-09-02 Jürg Billeter <j@bitron.ch>
1292 * vala/parser.y, vala/valacodecontext.vala,
1293 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1294 vala/valacodegenerator.vala, vala/valaarraycreationexpression.vala,
1295 vala/valablock.vala, vala/valacallback.vala, vala/valaclass.vala,
1296 vala/valaelementaccess.vala, vala/valafield.vala,
1297 vala/valaformalparameter.vala, vala/valaforstatement.vala,
1298 vala/valainitializerlist.vala, vala/valainterface.vala,
1299 vala/valainvocationexpression.vala, vala/valainvokable.vala,
1300 vala/valalambdaexpression.vala,
1301 vala/valalocalvariabledeclaration.vala, vala/valamemberaccess.vala,
1302 vala/valamethod.vala, vala/valanamespace.vala,
1303 vala/valaobjectcreationexpression.vala, vala/valasignal.vala,
1304 vala/valasourcefile.vala, vala/valastruct.vala,
1305 vala/valaswitchsection.vala, vala/valaswitchstatement.vala,
1306 vala/valatypereference.vala, vala/valavariabledeclarator.vala,
1307 ccode/valaccodefragment.vala, vapi/glib-2.0.vala: always default type
1309 * vala/valacodevisitor.vala, vala/valacodegenerator.vala,
1310 vala/valaexpression.vala, vala/valareturnstatement.vala: avoid
1311 unnecessary ref/unref pair in return expression
1312 * vala/valatypereference.vala: copy type arguments in copy method, too
1313 * vala/valasemanticanalyzer.vala: set type arguments in type_reference
1314 of ObjectCreationExpression
1315 * vala/valadatatype.vala: fix warning
1317 2006-09-02 Jürg Billeter <j@bitron.ch>
1319 * vala/valacodegenerator.vala: special case construction of GLib.List
1320 and GLib.SList (reported by Cayle Graumann)
1322 2006-09-02 Jürg Billeter <j@bitron.ch>
1324 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
1325 vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1326 vala/valamemberaccessibility.vala: prepare to support protected
1329 2006-09-02 Jürg Billeter <j@bitron.ch>
1331 * vala/parser.y: don't set parent_node in parser
1332 * vala/valasemanticanalyzer.vala: support string + operator
1333 * vala/valaassignment.vala, vala/valabinaryexpression.vala,
1334 vala/valacastexpression.vala, vala/valacodenode.vala,
1335 vala/valadostatement.vala, vala/valaexpressionstatement.vala,
1336 vala/valaforeachstatement.vala, vala/valaforstatement.vala,
1337 vala/valaifstatement.vala, vala/valainvocationexpression.vala,
1338 vala/valamemberaccess.vala, vala/valaobjectcreationexpression.vala,
1339 vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
1340 vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
1341 vala/valawhilestatement.vala: set parent_node of child nodes, add
1343 * vala/valanullliteral.vala: add default argument to construction method
1344 * tests/test-021.vala: test string + operator
1345 * tests/Makefile.am: update
1347 2006-09-02 Jürg Billeter <j@bitron.ch>
1349 * vala/scanner.l: support integer and floating point suffixes
1350 * vala/valasemanticanalyzer.vala: use correct type for integer and
1351 floating point literals
1352 * vala/valaintegerliteral.val, vala/valarealliteral.vala: add
1353 get_type_name method
1354 * vapi/glib-2.0.vala: add string to int64 conversion method
1356 2006-09-02 Jürg Billeter <j@bitron.ch>
1358 * vala/valasemanticanalyzer.vala: use IntegerType, FloatingType, and
1359 rank attributes to analyze arithmetic operations
1360 * vala/valacodegenerator.vala: generate C casts for explicit value-type
1362 * vala/valastruct.vala: add is_integer_type, is_floating_type, and
1363 get_rank methods, add IntegerType and FloatingType attributes
1364 * vala/valasemanticanalyzer.vala, vala/valacastexpression.vala,
1365 vala/valainstancecast.vala, ccode/valaccodecastexpression.vala: fix
1367 * vapi/glib-2.0.vala: add int16, uint16, int32, uint32, use IntegerType
1368 and FloatingType attributes
1370 2006-09-02 Jürg Billeter <j@bitron.ch>
1372 * vala/parser.y: set accessibility for constants
1373 * vala/valasemanticanalyzer.vala: set return type in property set
1375 * vala/valacodegenerator.vala: move public constants to header file
1376 * vala/valaclass.vala: don't create fields for properties in VAPI files
1377 * vala/valaconstant.vala: add access member
1379 2006-09-02 Jürg Billeter <j@bitron.ch>
1381 * vapi/cairo.vala: mark Matrix as reference type
1383 2006-08-24 Jürg Billeter <j@bitron.ch>
1385 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1386 mark virtual methods appropriately
1388 2006-08-24 Jürg Billeter <j@bitron.ch>
1390 * vala/valaattributeprocessor.vala, vala/valacodegenerator.vala,
1391 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala: add
1392 possibility to change interface type struct cname, default to `Iface'
1393 suffix (reported by Dominique Würtz)
1395 2006-08-23 Jürg Billeter <j@bitron.ch>
1397 * vala/valasemanticanalyzer.vala: support calling non-abstract interface
1399 * vala/valainterface.vala: add get_base_types method
1401 2006-08-20 Jürg Billeter <j@bitron.ch>
1403 * configure.ac: Post-release version bump, fail if flex or bison not
1406 2006-08-18 Jürg Billeter <j@bitron.ch>
1408 * NEWS: update for 0.0.3 release
1410 2006-08-18 Jürg Billeter <j@bitron.ch>
1412 * compiler/valacompiler.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala:
1413 use array length functionality
1415 2006-08-18 Jürg Billeter <j@bitron.ch>
1417 * vala/valacodegenerator.vala: support implicit array length parameter
1418 * vala/valainterfacewriter.vala, vala/valaformalparameter.vala,
1419 vala/valamethod.vala: support NoArrayLength attribute
1420 * compiler/valacompiler.vala, vapi/atk.vala, vapi/cairo.vala,
1421 vapi/gdk-2.0.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala,
1422 vapi/pango.vala: add NoArrayLength attributes
1423 * tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
1424 tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
1425 tests/test-007.vala, tests/test-008.vala, tests/test-009.vala,
1426 tests/test-010.vala, tests/test-011.vala, tests/test-012.vala,
1427 tests/test-013.vala, tests/test-014.vala, tests/test-015.vala,
1428 tests/test-016.vala, tests/test-017.vala, tests/test-018.vala,
1429 tests/test-019.vala, tests/test-020.vala: remove argc parameter
1431 2006-08-18 Jürg Billeter <j@bitron.ch>
1433 * vala/parser.y: remove read/write tokens
1434 * compiler/valacompiler.vala: support package dependencies
1436 * vapi/gtk+-2.0.deps
1437 * vapi/Makefile.am: update
1439 2006-08-18 Jürg Billeter <j@bitron.ch>
1441 * vala/parser.y, vala/valastruct.vala: support base types for structs
1442 * vala/valainterfacewriter.vala: obey set keyword
1443 * vapi/glib-2.0.vala: add SignalInvocationHint, SignalEmissionHook,
1444 SignalFlags, ValueArray, Math, Timeout, and PtrArray
1445 * vapi/cairo.vala: initial cairo binding
1446 * vapi/pango.vala, vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala:
1447 bindings generated from Pango 1.13.5, ATK 1.12.1, and GTK+ 2.10.1
1448 * vapi/Makefile.am: update
1450 2006-08-11 Raffaele Sandrini <rasa@gmx.ch>
1452 * vala/valasymbolresolver.vala, vala/valatypereference.vala,
1453 vala/valaelementaccess.vala, vala/valadatatype.vala, vala/parser.y,
1454 vala/valaarray.vala: make those classes ready to process
1455 multidimensional arrays.
1456 * vala/scanner.l: remove ARRAY_QUALIFIER token
1457 * vala/valasemanticanalyzer.vala, vala/parser.y,
1458 vala/valacodegenerator.vala, vala/valacodegenerator.vala,
1459 vala/valacodevisitor.vala: add multidimensional array support however
1460 only one dimensional arrays can be created yet
1461 * vala/Makefile.am, vala/vala.h: update
1462 * vala/valatypereference.vala: remove source reference parameter
1463 when creating from an expression
1464 * vala/valacodegenerator.vala: add support for uint, long and ulong
1467 2006-08-10 Jürg Billeter <j@bitron.ch>
1469 * vala/scanner.l: support hexadecimal and octal integer literals,
1470 support hexadecimal escape sequences, support BASE and THIS
1471 * vala/parser.y: use BASE and THIS keywords
1472 * vala/valasemanticanalyzer.vala: don't use new base keyword as variable
1474 * vala/valacodegenerator.vala: simplify code
1475 * vala/valainterfacewriter.vala: obey base keyword
1477 2006-08-10 Jürg Billeter <j@bitron.ch>
1479 * vala/valacodegenerator.vala: fix memory management in switch
1481 * tests/test-020.vala: extend switch statement test
1483 2006-08-10 Jürg Billeter <j@bitron.ch>
1485 * vala/valacodegenerator.vala: support switch statements
1486 * vala/valaswitchsection.vala: add has_default_label () and
1487 get_statements () methods
1488 * vala/valaswitchstatement.vala: add get_sections () method
1489 * ccode/valaccodedostatement.vala
1490 * ccode/Makefile.am: update
1491 * tests/test-020.vala: test switch statements
1492 * tests/Makefile.am: update
1494 2006-08-10 Jürg Billeter <j@bitron.ch>
1496 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: use
1498 * vala/valainvokable.vala
1499 * vala/valafield.vala, vala/valaformalparameter.vala,
1500 vala/valamethod.vala, valasignal.vala,
1501 vala/valavariabledeclarator.vala: implement Invokable
1502 * vala/Makefile.am: update
1504 2006-08-10 Jürg Billeter <j@bitron.ch>
1506 * vala/parser.y: support constants in namespaces and constants without
1508 * vala/valasemanticanalyzer.vala: depend on implemented interfaces
1509 * vala/valacodegenerator.vala: always include glib-object.h for
1510 interfaces, append NULL to variable argument list calls
1511 * vala/valainterfacewriter.vala: support constants and ellipsis
1513 * vala/valaconstant.vala: make initializer optional
1514 * vala/valainterface.vala: implement get_lower_case_cprefix ()
1515 * vala/valanamespace.vala: support constants
1517 2006-08-10 Jürg Billeter <j@bitron.ch>
1519 * vala/scanner.l: accept real literals with trailing dot
1520 * vala/valasymbolresolver.vala: ignore non-type symbols
1521 * vala/valacodegenerator.vala: support float and double properties,
1522 adapt to Field changes, support compound assignments in properties
1523 * vala/valainterfacewriter.vala: support ReferenceType attribute
1524 * vala/valaclass.vala: implement get_lower_case_cprefix ()
1525 * vala/valadatatype.vala: add get_lower_case_cprefix () method
1526 * vala/valafield.vala: let get_cname return full C name
1527 * vala/valamethod.vala: use DataType.get_lower_case_cprefix ()
1528 * vala/valastruct.vala: implement get_lower_case_cprefix (), add
1529 set_is_reference_type () method
1531 2006-08-09 Jürg Billeter <j@bitron.ch>
1533 * vala/parser.y: adapt to Vala.Signal change
1534 * vala/valaattributeprocessor.vala: process signal attributes
1535 * vala/valacodegenerator.vala: manage memory of element access
1536 expressions, mark get_property and set_property functions static,
1537 support signal emitter functions
1538 * vala/valacodecontext.vala: use get_cinclude_filename method
1539 * vala/valainterfacewriter.vala: use C header filename of namespace,
1540 support signals, support NoAccessorMethod attribute
1541 * vala/valadatatype.vala: add default arguments
1542 * vala/valaenum.vala: make set_cprefix method public
1543 * vala/valanamespace.vala: add get_cheader_filename and
1544 set_cheader_filename methods
1545 * vala/valasignal.vala: add has_emitter property, add process_attributes
1547 * vala/valasourcefile.vala: add get_cinclude_filename method
1548 * compiler/valacompiler.vala: adapt to SourceFile changes
1550 2006-08-05 Jürg Billeter <j@bitron.ch>
1552 * vala/valaparser.vala: only parse .vala source files
1553 * vala/valasymbolbuilder.vala, vala/valaproperty.vala: support disabling
1554 automatic property accessor generation
1555 * vala/valasemanticanalyzer.vala: fix typo
1556 * vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1557 vala/valacodecontext.vala: use correct includes for libraries
1558 * vala/valacodegenerator.vala: use get_canonical_cconstant method for
1560 * vala/valainterfacewriter.vala: support interfaces, non-null types,
1561 callbacks, and construction methods
1562 * vala/valasignal.vala: add get_canonical_cconstant method
1563 * vala/valaenum.vala, vala/valainterface.vala, vala/valanamespace.vala,
1564 vala/valastruct: add default arguments
1565 * vala/Makefile.am: install libvala.so and header files
1566 * ccode/Makefile.am: install header files
1567 * compiler/valacompiler.vala: set library name in code context
1568 * compiler/Makefile.am: adapt to build system changes
1569 * vapi/glib-2.0.vala: add skeletons for Callback, Closure, IOChannel,
1570 TimeVal, Scanner, SpawnFlags, OptionGroup, MarkupParser, and Quark
1571 * vapi/Makefile.am: add vala-1.0.vala
1573 * configure.ac: disable static library by default, add vala-1.0.pc
1574 * Makefile.am: add vala-1.0.pc
1576 2006-08-02 Jürg Billeter <j@bitron.ch>
1578 * configure.ac: Post-release version bump.
1580 2006-08-02 Jürg Billeter <j@bitron.ch>
1582 * NEWS: update for 0.0.2 release
1583 * vala/valasemanticanalyzer.vala: check for floating reference in
1584 construction methods
1585 * vala/valasourcefile.vala, vala/valacodegenerator.vala,
1586 ccode/valaccodeincludedirective.vala: differentiate between
1587 package-internal and external includes
1588 * vapi/gtk+-2.0.vala: port to construction methods
1590 2006-08-02 Jürg Billeter <j@bitron.ch>
1592 * port to construction methods
1593 * vala/valaparenthesizedexpression.vala, vala/valareport.vala,
1594 vala/valareturnstatement.vala, vala/valasourcefilecycle.vala,
1595 vala/valasourcereference.vala, vala/valatypecheck.vala,
1596 vala/valatypeofexpression.vala, vala/valatypeparameter.vala: add
1597 interface documentation, use implicit namespace specification
1598 * vala/Makefile.am: sort source file list
1600 2006-08-02 Jürg Billeter <j@bitron.ch>
1602 * vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
1603 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
1604 vala/valainterfacewriter.vala, vala/valaclass.vala,
1605 vala/valaexpressionstatement.vala, vala/valamethod.vala,
1606 vala/valaobjectcreationexpression.vala, vala/valastatement.vala,
1607 vala/valastruct.vala: add support for construction methods
1608 * vala/valabooleanliteral.vala, vala/valaexpression.vala,
1609 vala/valaintegerliteral.vala, vala/valaliteral.vala,
1610 vala/valaliteralexpression.vala, vala/valamemberaccess.vala: add
1612 * vala/valamemberaccess.vala, vala/valatypereference.vala: support
1613 storing type arguments in MemberAccess
1614 * vala/valacodenode.vala: add parent_node property
1615 * vala/parser.y, vala/valaifstatement.vala: only allow blocks as
1617 * vala/valaenum.vala: implement get_type_id method
1618 * vala/valainterfacewriter.vala: output default expressions of formal
1620 * vala/valaformalparameter.vala: visit default expression
1621 * vala/valaobjectcreationexpression.vala, vala/valanullliteral.vala,
1622 vala/valaproperty.vala, vala/valapropertyaccessor.vala: add interface
1623 documentation, use implicit namespace specification
1624 * vala/vala.h: add valaelementaccess.h and valarealliteral.h
1625 * ccode/valaccodememberaccess.vala: don't mark is_pointer as construct
1626 * vapi/glib-2.0.vala: add GValue
1627 * vapi/gtk+-2.0.vala: small updates
1629 2006-07-31 Jürg Billeter <j@bitron.ch>
1631 * vala/parser.y: support prefix increment and decrement, fix parsing
1633 * vala/valasemanticanalyzer.vala: fix some bugs in error handling,
1634 support prefix increment and decrement
1635 * vala/valacodegenerator.vala: support prefix increment and decrement
1636 * vala/valanamespace.vala: add interface documentation, use implicit
1637 namespace specification
1638 * vala/valaunaryexpression.vala: support prefix increment and decrement
1639 * ccode/valaccodeunaryexpression.vala: support prefix increment and
1641 * vapi/glib-2.0.vala: add Environment struct
1643 2006-07-27 Jürg Billeter <j@bitron.ch>
1645 * vala/scanner.l: support CASE, DEFAULT, DO, and SWITCH
1646 * vala/parser.y: support switch and do statements
1647 * vala/valacodevisitor.vala: add support for switch and do statements
1648 * vala/valadostatement.vala
1649 * vala/valaswitchlabel.vala
1650 * vala/valaswitchsection.vala
1651 * vala/valaswitchstatement.vala
1652 * vala/valastatement.vala, vala/valasymbol.vala,
1653 vala/valaunaryexpression.vala, vala/valavariabledeclarator.vala,
1654 vala/valawhilestatement.vala: add interface documentation, use
1655 implicit namespace specification
1656 * vala/vala.h, vala/Makefile.am: update
1657 * vapi/glib-2.0.vala: don't use default keyword
1659 2006-07-27 Jürg Billeter <j@bitron.ch>
1661 * vala/parser.y: support for loops with local variable declaration in
1664 2006-07-27 Jürg Billeter <j@bitron.ch>
1666 * vala/parser.y: don't require developer to explicitly write static in
1667 namespace field declarations, support type parameters in interfaces
1669 * vala/valasymbolresolver.vala: support interfaces and callbacks
1670 * vala/valasemanticanalyzer.vala: use is_subtype_of method, support
1672 * vala/valamemorymanager.vala: support callbacks in fields
1673 * vala/valacodegenerator.vala: support callbacks in fields
1674 * vala/valacallback.vala: support type parameters
1675 * vala/valaclass.vala: add is_subtype_of method
1676 * vala/valadatatype.vala: add is_subtype_of method
1677 * vala/valainterface.vala: add is_subtype_of method
1679 2006-07-26 Jürg Billeter <j@bitron.ch>
1681 * vala/scanner.l: support casting arrays
1682 * vala/parser.y: don't require developer to explicitly write static in
1683 namespace method declarations
1684 * vala/valaarray.vala: correct cname for arrays with value-type elements
1685 * vala/valacodenode.vala: save source line reference in ccodenode
1686 * ccode/valaccodelinedirective.vala
1687 * ccode/valaccodenode.vala: support source line reference
1688 * ccode/Makefile.am: update
1689 * vapi/glib-2.0.vala: add to_string methods to integer types, add size
1690 method to string, add u_sleep method to Thread, fix memory management
1691 in List and SList, add sort method to List
1693 2006-07-19 Jürg Billeter <j@bitron.ch>
1695 * vala/valatypereference.vala: use more expressive property names, add
1697 * vala/parser.y, vala/valasymbolbuilder.vala,
1698 vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
1699 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
1700 vala/valainterfacewriter.vala, vala/valasourcefile.vala,
1701 vala/valacallback.vala, vala/valaclassregisterfunction.vala,
1702 vala/valasignal.vala: adapt to changes in TypeReference
1703 * vala/valasourcefile.vala: replace public fields by properties /
1705 * vala/valacodecontext.vala: adapt to changes in SourceFile
1706 * vala/valaparser.vala: correct handling of source files without header
1708 * vala/valasymbolbuilder.vala: don't generate code for VAPI files
1709 * vala/valasemanticanalyzer.vala: report error respectively warning if
1710 method return type misses ownership transfer
1711 * vala/valainterfacewriter.vala: correct property declaration output
1712 * vala/valaparser.vala, vala/valasourcefile.vala, vala/valaliteral.vala,
1713 vala/valamemberaccessibility.vala, vala/valanamedargument.vala,
1714 vala/valanamespacereference.vala, vala/valatypereference.vala: add
1715 interface documentation, use implicit namespace specification
1717 2006-07-18 Jürg Billeter <j@bitron.ch>
1719 * vala/valasymbolresolver.vala: make sure that current_scope isn't null
1720 * vala/valamemorymanager.vala: start to support memory management with
1722 * vala/valacodegenerator.vala: support iteration over SList, properties
1723 without accessor methods
1724 * vapi/glib-2.0.vala: add string.hash (), Error fields and SList
1725 * vapi/gtk+-2.0.vala: add StatusIcon class
1726 * README: mention exceptions
1728 2006-07-16 Jürg Billeter <j@bitron.ch>
1730 * configure.ac: Post-release version bump.
1731 * vala/parser.y: remove g_object_unref call to fix crash in parsing
1733 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
1735 * vapi/glib-2.0.vala: GString enhancements
1736 * vapi/Makefile.am: dist gtk+-2.0.vala and pango.vala
1738 2006-07-15 Jürg Billeter <j@bitron.ch>
1740 * NEWS: update for 0.0.1 release
1741 * README: add introduction
1742 * COPYING: replace by LGPL
1743 * compiler/valacompiler.vala: add /usr/local/share/vala/vapi ad default
1745 * vapi/glib-2.0.vala: File and HashTable enhancements
1747 2006-07-14 Raffaele Sandrini <rasa@gmx.ch>
1749 * vala/valacodegenerator.vala, vala/valasymbolresolver.vala,
1750 vala/scanner.l, vala/valatypereference.vala,
1751 vala/valasemanticanalyzer.vala, vala/valaelementaccess.vala,
1752 vala/valadatatype.vala, vala/parser.y, vala/valaarray.vala,
1753 vala/valacodevisitor.vala, ccode/valaccodeelementaccess.vala: add
1754 element access support
1755 * vala/valasemanticanalyzer.vala: add visit_postfix_expression
1757 * tests/test-019.vala: add element access testcase
1758 * vala/Makefile.am, tests/Makefile.am, ccode/Makefile.am: update
1760 2006-07-14 Jürg Billeter <j@bitron.ch>
1762 * vala/valacodecontext.vala: ignore file-internal dependencies
1763 * vala/valasemanticanalyzer.vala: mark string literals as non-null, add
1765 * vala/valamemorymanager.vala: only check for leaks with reference
1766 types, manage memory in field initializers
1767 * vala/valacodegenerator.vala: add non-null parameter typechecks for
1768 structs, simplify ref expression if expression is known to be non-null
1769 * vapi/glib-2.0.vala: unichar, string, String, and Path enhancements,
1772 2006-07-10 Jürg Billeter <j@bitron.ch>
1774 * vala/parser.y: adapt to changes in InvocationExpression,
1775 LocalVariableDeclaration, and InitializerList
1776 * vala/valasemanticanalyzer.vala: add some implicit casts, fix assigning
1777 callback to field, adapt to changes in InvocationExpression
1778 * vala/valamemorymanager.vala: adapt to change in InvocationExpression
1779 * vala/valacodegenerator.vala: fix signal handler without parameters,
1780 fix access to value-type struct members, adapt to changes in
1781 LocalVariableDeclaration, InitializerList, and InvocationExprssion
1782 * vala/valaclass.vala: don't let private static fields influence
1783 has_private_fields, correct marshaller type name
1784 * vala/valaifstatement.vala, vala/valainitializerlist.vala,
1785 vala/valainstancecast.vala, vala/valaintegerliteral.vala,
1786 vala/valainvocationexpression.vala, vala/valaliteralexpression.vala,
1787 vala/valalocalvariabledeclaration.vala: add interface documentation,
1788 use implicit namespace specification
1789 * compiler/valacompiler.vala: fix --vapidir handling
1790 * vapi/glib-2.0.vala: add MainLoop, MainContext, IdleSource, Source, and
1793 2006-07-08 Jürg Billeter <j@bitron.ch>
1795 * vala/valasemanticanalyzer.vala: don't allow write access to read-only
1797 * vala/valacodegenerator.vala: adapt to changes in CCodeFragment and
1799 * vala/valapostfixexpression.vala, ccode/valaccodebinaryexpression.vala,
1800 ccode/valaccodeblock.vala, ccode/valaccodebreakstatement.vala,
1801 ccode/valaccodecasestatement.vala,
1802 ccode/valaccodecommaexpressoin.vala, ccode/valaccodecomment.vala,
1803 ccode/valaccodeconditionalexpression.vala,
1804 ccode/valaccodeconstant.vala, ccode/valaccodecontinuestatement.vala,
1805 ccode/valaccodedeclaration.vala, ccode/valaccodedeclarator.vala,
1806 ccode/valaccodeenum.vala, ccode/valaccodeemptystatement.vala,
1807 ccode/valaccodeexpressionstatement.vala,
1808 ccode/valaccodeformalparameter.vala, ccode/valaccodeforstatement.vala,
1809 ccode/valaccodefragment.vala, ccode/valaccodefunction.vala,
1810 ccode/valaccodefunctioncall.vala,
1811 ccode/valaccodefunctiondeclarator.vala,
1812 ccode/valaccodeidentifier.vala, ccode/valaccodeifstatement.vala,
1813 ccode/valaccodeincludedirective.vala,
1814 ccode/valaccodeinitializerlist.vala,
1815 ccode/valaccodemacroreplacement.vala,
1816 ccode/valaccodememberaccess.vala, ccode/valaccodemodifiers.vala,
1817 ccode/valaccodenewline.vala, ccode/valaccodeoncesection.vala,
1818 ccode/valaccodeparenthesizedexpression.vala,
1819 ccode/valaccodereturnstatement.vala, ccode/valaccodestatement.vala,
1820 ccode/valaccodestruct.vala, ccode/valaccodeswitchstatement.vala,
1821 ccode/valaccodeunaryexpression.vala,
1822 ccode/valaccodevariabledeclarator.vala,
1823 ccode/valaccodewhilestatement.vala, ccode/valaccodewriter.vala: add
1824 interface documentation, use implicit namespace specification
1826 2006-07-08 Jürg Billeter <j@bitron.ch>
1828 * vala/valasemanticanalyzer.vala: don't allow access to private members
1830 2006-07-08 Jürg Billeter <j@bitron.ch>
1832 * vala/valasemanticanalyzer.vala: check method signatures of overriding
1834 * vala/parser.y, vala/valaclassregisterfunction.vala,
1835 vala/valatyperegisterfunction.vala: support abstract classes
1836 * vala/valamethod.vala: add equals method
1837 * vala/valatypereference.vala: add equals method
1838 * corrects overriding methods to match signatures of overridden methods
1839 to fix build with current compiler
1841 2006-07-08 Jürg Billeter <j@bitron.ch>
1843 * vala/parser.y, vala/valacodegenerator.vala: adapt to ForStatement API
1845 * vala/valaclass.vala: make {get,set}_lower_case_csuffix methods private
1846 * vala/valaenum.vala, vala/valaenumvalue.vala,
1847 vala/valaexpressionstatement.vala, vala/valafield.vala,
1848 vala/valaflags.vala, vala/valaflagsvalue.vala,
1849 vala/valaforeachstatement.vala, vala/valaforstatement.vala: add
1850 interface documentation, use implicit namespace specification
1852 2006-07-08 Jürg Billeter <j@bitron.ch>
1854 * vala/parser.y: adapt to Method API changes
1855 * vala/valasemanticanalyzer.vala: support signals, mark private signal
1856 handlers as instance_last
1857 * vala/valamemorymanager.vala: support signals
1858 * vala/valacodegenerator.vala: support signals, methods with
1860 * vala/valaclass.vala: add get_type_id and get_marshaller_type_name
1862 * vala/valadatatype.vala: add get_marshaller_type_name method
1863 * vala/valastruct.vala: move type_id attribute to CCode, support
1864 marshaller_type_name attribute
1865 * vala/valainterfacewriter.vala, vala/valamethod.vala,
1866 vala/valastruct.vala, ccode/valaccodeexpression.vala,
1867 ccode/valaccodenode.vala: add interface documentation, use implicit
1868 namespace specification
1869 * vala/valacallback.vala, vala/valasignal.vala: improve documentation
1870 * ccode/valaccodecastexpression.vala: type cast in C code
1871 * ccode/Makefile.am: update
1872 * tests/test-018.vala: test signals
1873 * tests/Makefile.am: update
1874 * vapi/glib-2.0.vala: add type_id and marshaller_type_name attributes
1876 2006-07-07 Jürg Billeter <j@bitron.ch>
1878 * vala/valacodegenerator.vala, vala/valaclassregisterfunction.vala:
1880 * vala/parser.y, vala/valasemanticanalyzer.vala,
1881 vala/valalambdaexpression.vala: support lambda expressions with
1883 * vala/valaclassregisterfunction.vala, vala/valaemptystatement.vala,
1884 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
1885 vala/valatyperegisterfunction.vala: add interface documentation, use
1886 implicit namespace specification
1887 * tests/test-015.vala: test lambda expressions with statement body
1888 * tests/test-017.vala: test interfaces
1889 * tests/Makefile.am: update
1891 2006-07-07 Jürg Billeter <j@bitron.ch>
1893 * vala/valaconstructor.vala, vala/valacontinuestatement.vala,
1894 vala/valadeclarationstatement.vala, vala/valadestructor.vala: add
1895 interface documentation, use implicit namespace specification
1897 2006-07-07 Jürg Billeter <j@bitron.ch>
1899 * vala/valacodecontext.vala: use continue statements to decrease
1901 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
1902 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1903 vala/valacodegenerator.vala, vala/valaconditionalexpression.vala,
1904 vala/valaconstant.vala: add interface documentation, use implicit
1905 namespace specification
1906 * vala/valasemanticanalyzer.vala: check that if, while, for, and
1907 conditional expression conditions are boolean
1908 * vala/valaclass.vala: remove dummy accessor, breaks build with old
1910 * compiler/valacompiler.vala: use implicit namespace specification
1911 * tests/test-016.vala: test conditional expressions
1912 * tests/Makefile.am: update
1914 2006-07-07 Jürg Billeter <j@bitron.ch>
1916 * vala/valacodecontext.vala: add interface documentation, use implicit
1917 namespace specification
1918 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
1919 vala/valasemanticanalyzer.vala: adapt to change in CodeContext
1921 2006-07-06 Jürg Billeter <j@bitron.ch>
1923 * vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
1924 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1925 vala/valacodegenerator.vala, vala/valatypereference.vala, vala/vala.h,
1926 vala/Makefile.am: merge SimpleName into MemberAccess
1927 * vala/valasymbolresolver.vala, vala/valainterfacewriter.vala: adapt to
1929 * vala/valasemanticanalyzer.vala: support non-static lambda expressions
1930 and lambda expressions without return values
1931 * vala/valacodegenerator.vala: support conditional expressions, support
1932 lambda expressions as signal handlers, support read-only and
1933 write-only properties
1934 * vala/valacodevisitor.vala, vala/valamemorymanager.vala,
1935 vala/valaassignment.vala: visit at beginning and end
1936 * vala/valacallback.vala: add instance property
1937 * vala/valasignal.vala: add get_callback method
1938 * vala/valacastexpression.vala, vala/valacharacterliteral.vala,
1939 vala/valaclass.vala, vala/valamemberaccess.vala, vala/valasignal.vala:
1940 add interface documentation, use implicit namespace specification
1942 2006-07-05 Jürg Billeter <j@bitron.ch>
1944 * vala/parser.y: don't pass parameter list to lambda expression
1946 * vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1947 vala/valacodegenerator.vala: support static lambda expressions and
1949 * vala/valainvocationexpression.vala: visit call node before visiting
1950 begin of invocation expression
1951 * vala/valaformalparameter.vala, vala/valalambdaexpression.vala: add
1952 interface documentation, use implicit namespace specification
1953 * vala/valamethod.vala: allow nested methods
1954 * tests/test-015.vala: test lambda expressions
1955 * tests/Makefile.am: update
1957 2006-07-04 Jürg Billeter <j@bitron.ch>
1959 * vala/parser.y: support implicit namespace specification in callback
1961 * vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1962 vala/valacodegenerator.vala: support callbacks
1963 * vala/valaassignment.vala, vala/valabinaryexpression.vala: improve
1965 * vala/valabooleanliteral.vala, vala/valabreakstatement.vala,
1966 vala/valacallback.vala: add interface documentation, use implicit
1967 namespace specification
1968 * vala/valacallback.vala: add matches_method method, mark as
1970 * ccode/valaccodetypedefinition.vala: replace typedef_name by
1971 declarator, add interface documentation, use implicit namespace
1973 * tests/test-013.vala: test break
1974 * tests/test-014.vala: test callback
1975 * tests/Makefile.am: update
1977 2006-07-04 Jürg Billeter <j@bitron.ch>
1979 * vala/valablock.vala: add interface documentation, use implicit
1980 namespace specification
1981 * tests/test-011.vala: test binary expressions
1982 * tests/test-012.vala: test blocks
1983 * configure.ac, Makefile.am, tests/Makefile.am: distribute tests
1985 2006-07-04 Jürg Billeter <j@bitron.ch>
1987 * vala/valacodevisitor.vala, vala/valaattributeprocessor.vala,
1988 vala/valabinaryexpression.vala: add interface documentation, use
1989 implicit namespace specification
1990 * vala/valaassignment.vala, vala/valaattribute.vala: documentation
1993 2006-07-04 Jürg Billeter <j@bitron.ch>
1995 * vala/valacodegenerator.vala: generate assignment with appropriate
1997 * vala/valaassignment.vala: use implicit namespace specification
1998 * ccode/valaccodeassignment.vala: support assignment operators , add
1999 interface documentation, use implicit namespace specification
2000 * tests/test-010.vala: test assignments
2002 2006-07-03 Jürg Billeter <j@bitron.ch>
2004 * vala/parser.y: support implicit namespace specification in struct,
2005 interface, enum, and flags declaration
2006 * vala/valasymbolbuilder.vala: report error when declaring non-static
2008 * vala/valasemanticanalyzer.vala: analyze return statements
2009 * vala/valacodegenerator.vala: correctly set GParamFlags for properties,
2010 initialize static variables, add preconditions to property accessors,
2011 support namespace methods
2012 * vala/valaassignment.vala, vala/valaattribute.vala: add interface
2013 documentation, use implicit namespace specification
2014 * tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
2015 tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
2016 tests/test-007.vala, tests/test-008.vala, tests/test-009.vala:
2017 update test cases to print test values
2019 2006-06-30 Jürg Billeter <j@bitron.ch>
2021 * vala/valacodenode.vala, vala/valadatatype.vala,
2022 vala/valaexpression.vala: use implicit namespace specification,
2025 2006-06-30 Jürg Billeter <j@bitron.ch>
2027 * vala/parser.y: support implicit namespace specification in class
2030 2006-06-29 Jürg Billeter <j@bitron.ch>
2032 * vala/valacodegenerator.vala, vala/valaclass.vala,
2033 vala/valadatatype.vala, vala/valastruct.vala: distinguish between
2034 ref_function/unref_function and dup_function/free_function
2035 * vala/valadatatype.vala: add interface documentation
2036 * vapi/glib-2.0.vala: use dup_function attribute, keep ref_function for
2039 2006-06-29 Jürg Billeter <j@bitron.ch>
2041 * vala/valacodenode.vala, vala/valaexpression.vala: add interface
2044 2006-06-28 Jürg Billeter <j@bitron.ch>
2046 * vala/valasymbolbuilder.vala: add private add_symbol helper method
2047 * vala/valasymbolresolver.vala: tiny refactoring of GObject lookup
2048 * vala/valasemanticanalyzer.vala: use get_parameters method of Callback
2049 * vala/valacallback.vala, vala/valaintegerliteral.vala,
2050 vala/valarealliteral.vala, vala/valastringliteral.vala: replace public
2051 fields by properties / private fields, don't mark properties as
2052 construct-only, use non-null types
2053 * vala/valaattribute.vala, vala/valacodenode.vala,
2054 vala/valaconstructor.vala, vala/valadatatype.vala,
2055 vala/valadestructor.vala, vala/valaenumvalue.vala,
2056 vala/valaexpression.vala, vala/valafield.vala,
2057 vala/valaflagsvalue.vala, vala/valaformalparameter.vala,
2058 vala/valaliteral.vala, vala/valalocalvariabledeclaration.vala,
2059 vala/valamethod.vala, vala/valanamedargument.vala,
2060 vala/valanamespace.vala, vala/valanamespacereference.vala,
2061 vala/valaproperty.vala, vala/valapropertyaccessor.vala,
2062 vala/valasignal.vala, vala/valastatement.vala,
2063 vala/valatypeparameter.vala, vala/valatypereference.vala,
2064 vala/valavariabledeclarator.vala: move source_reference to CodeNode
2066 2006-06-28 Jürg Billeter <j@bitron.ch>
2068 * vala/valabooleanliteral.vala, vala/valacharacterliteral.vala,
2069 vala/valaintegerliteral.vala, vala/valaliteral.vala,
2070 vala/valanullliteral.vala, vala/valarealliteral.vala,
2071 vala/valastringliteral.vala: move source_reference to Vala.Literal,
2072 use non-null types, don't mark properties as construct-only
2074 2006-06-26 Jürg Billeter <j@bitron.ch>
2076 * vala/parser.y: plug some memory leaks, adapt to Vala.Block changes
2077 * vala/valaattribute.vala, vala/valabinaryexpression.vala,
2078 vala/valablock.vala, vala/valabooleanexpression.vala,
2079 vala/valabreakstatement.vala, vala/valaliteral.vala,
2080 vala/valastatement.vala: replace public fields by properties / private
2081 fields, don't mark properties as construct-only, use non-null types
2082 * vala/valadatatype.vala: renamed from Vala.Type_ to Vala.DataType
2083 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
2084 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
2085 vala/valasourcefile.vala, vala/valacallback.vala, vala/valaclass.vala,
2086 vala/valaclassregisterfunction.vala, vala/valaconstant.vala,
2087 vala/valaenum.vala, vala/valaflags.vala, vala/valainstancecast.vala,
2088 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
2089 vala/valamethod.vala, vala/valastruct.vala,
2090 vala/valatypeparameter.vala, vala/valatypereference.vala,
2091 vala/valatypergisterfunction.vala: adapt to renaming of Vala.Type_ to
2093 * vala/Makefile.am: update
2095 2006-06-22 Jürg Billeter <j@bitron.ch>
2097 * vala/valaassignment.vala: don't mark properties as construct-only,
2099 * vala/valacodenode.vala: use non-null type
2100 * vala/valaexpression.vala: replace public fields by properties
2102 2006-06-22 Jürg Billeter <j@bitron.ch>
2104 * vala/parser.y: replace specialized interface member declarations by
2105 standard member declarations to allow non-abstract methods in
2107 * vala/valacodegenerator.vala: cast instance in property setter
2110 2006-06-22 Jürg Billeter <j@bitron.ch>
2112 * vala/scanner.l: support LAMBDA and CALLBACK
2113 * vala/parser.y: support callbacks and lambda expressions
2114 * vala/valacodevisitor.vala: add visit methods for callbacks and lambda
2116 * vala/valasymbolbuilder.vala: use non-null parameter types, support
2118 * vala/valasemanticanalyzer.vala: partially support interface methods,
2119 support callback invocations
2120 * vala/valamemorymanager.vala: support callback invocations
2121 * vala/valacodegenerator.vala: partially support interface methods
2122 * vala/valacallback.vala: initial implementation
2123 * vala/valacodenode.vala: replace public fields by properties
2124 * vala/valaexpression.vala: add expected_type field
2125 * vala/valainvocationexpression.vala: also visit at beginning
2126 * vala/valalambdaexpression.vala
2127 * vala/valanamespace.vala: support callbacks
2128 * vala/vala.h: update
2129 * vala/Makefile.am: update
2131 2006-06-18 Jürg Billeter <j@bitron.ch>
2133 * vala/scanner.l: support TYPEOF
2134 * vala/parser.y: support typeof expressions, out ref parameters, and
2136 * vala/valacodevisitor.vala: add visit method for typeof expressions
2137 * vala/valaattributeprocessor.vala: use non-null parameter types,
2138 support enums and properties
2139 * vala/valasemanticanalyzer.vala: support floating references
2140 * vala/valamemorymanager.vala: ignore signal connections
2141 * vala/valacodegenerator.vala: reset temp variable id at beginning of
2142 each file, fix out parameters, support properties without accessor
2143 methods, support floating references, add typeof expression, support
2144 static signal handlers
2145 * vala/valaclass.vala: use default arguments
2146 * vala/valaenum.vala: support cname, cprefix, and cheader_filename
2148 * vala/valaenumvalue.vala: use Enum.get_cprefix ()
2149 * vala/valamethod.vala: support FloatingReference attribute
2150 * vala/valanamespace.vala: use default arguments
2151 * vala/valaproperty.vala: support NoAccessorMethod attribute
2152 * vala/valastruct.vala: support type_id
2153 * vala/valatype.vala: add abstract get_type_id method
2154 * vala/valatypeofexpression.vala
2155 * vala/valatypereference.vala: add floating_reference property, correct
2156 to_string method signature
2157 * vala/vala.h: update
2158 * vala/Makefile.am: update
2159 * vapi/glib-2.0.vala: add GInitiallyUnowned
2160 * vapi/gtk+-2.0.vala: start of a GTK+ binding
2161 * vapi/pango.vala: start of a Pango binding
2163 2006-06-17 Jürg Billeter <j@bitron.ch>
2165 * vala/scanner.l: don't leak comment texts, support generic types with
2167 * vala/parser.y: plug most memory leaks
2168 * vala/valacodecontext.vala: work around memory management issues
2169 * vala/valasourcefile.vala: break reference cycles
2170 * vala/valasourcefilecycle.vala: break reference cycles
2171 * vala/valasymbolbuilder.vala: store `this` and `value` parameters in
2172 appropriate member node
2173 * vala/valasymbolresolver.vala: break reference cycle
2174 * vala/valasemanticanalyzer.vala: break reference cycle, promote local
2175 variables with ownership transferring initializer, store foreach
2176 variable declarator in statement object, assignments to properties
2177 don't take value ownership, make null type checks behave well on
2178 either side of a comparison
2179 * vala/valamemorymanager.vala: add support for named arguments,
2180 properties, and ellipsis parameter
2181 * vala/valacodegenerator.vala: add dispose function, register properties
2182 with static strings, don't leak strings when setting properties,
2183 support freeing string arrays, support freeing lists with allocated
2184 items, free local variables before return statements, free old value
2186 * vala/valainterfacewriter.vala: output more type reference information
2187 * vala/valaforeachstatement.vala: reference variable_declarator
2188 * vala/valaforstatement.vala: correct generic type arguments
2189 * vala/valamethod.vala: break reference cycle
2190 * vala/valaproperty.vala: reference this_parameter, add
2191 get_canoncial_cconstant method
2192 * vala/valapropertyaccessor.vala: reference value_parameter
2193 * vala/valasimplename.vala: remove unneeded type_argument_list
2194 parameter from constructor
2195 * vala/valasourcereference.vala: let to_string transfer ownership
2196 * vala/valastruct.vala: correct generic type argument
2197 * vala/valasymbol.vala: improve memory management
2198 * vala/valatype.vala: break reference cycles, let get_lower_case_cname
2200 * vala/valatypereference.vala: break reference cycle, use
2202 * vala/vala.h: add valaflags.h
2203 * ccode/valaccodefunction.vala: work around missing list deep copy
2204 * ccode/valaccodewriter.vala: don't manually free objects
2205 * compiler/valacompiler.vala: enable memory management by default,
2206 valac doesn't work anymore without memory management
2207 * vapi/glib-2.0.vala: add memory management information
2209 2006-06-15 Jürg Billeter <j@bitron.ch>
2211 * vala/valasemanticanalyzer.vala: add local variables to block
2212 * vala/valamemorymanager.vala: analyze local variable initializers
2213 * vala/valacodegenerator.vala: free local variables at end of block,
2214 only free non-null variables, use some strong references due to memory
2215 manager deficiencies
2216 * vala/valablock.vala: use non-null parameter types, add local variable
2218 * vala/valaenum.vala: let get_upper_case_cname transfer ownership
2219 * vala/valastruct.vala: add free_function attribute
2220 * ccode/valaccodewriter.vala: set freed values to null
2221 * vapi/glib-2.0.vala: add free functions
2223 2006-06-15 Raffaele Sandrini <rasa@gmx.ch>
2225 * vapi/libxml-2.0.vala: add basic libxml2 reader support
2226 * vapi/Makefile.am: add libxml-2.0.vala
2228 2006-06-14 Jürg Billeter <j@bitron.ch>
2230 * vala/parser.y: set is_lvalue_ref in property declarations
2231 * vala/valacodecontext.vala: use non-null parameter types
2232 * vala/valasymbolresolver.vala: fix lookup in namespaces of using
2233 directives, reset is_lvalue_ref where appropriate
2234 * vala/valasemanticanalyzer.vala: use non-null parameter types,
2235 correctly set is_ref and is_lvalue_ref in variable declarators
2236 * vala/valamemorymanager.vala: support methods which transfer ownership
2237 of arguments and or return value, analyze assignments
2238 * vala/valacodegenerator.vala: add missing reference increment calls,
2239 small memory management improvements
2240 * vala/valaclass.vala: use non-null parameter types
2241 * vala/valaexpression.vala: add ref_missing
2242 * vala/valastruct.vala: support ref_function attribute, use non-null
2244 * vala/valatype.vala: let get_upper_case_cname return ref string
2245 * vala/valatypereference.vala: add copy method
2246 * ccode/valaccodeconditionalexpression.vala
2247 * ccode/valaccodefunctioncall.vala: use non-null parameter types
2248 * ccode/Makefile.am: update
2249 * compiler/valacompiler.vala: process attributes before resolving
2250 symbols to have reference_type information available in resolver
2251 * vapi/glib-2.0.vala: add ref_function attributes to string and List,
2252 use ref parameters in List and HashTable until the compiler can handle
2255 2006-06-14 Jürg Billeter <j@bitron.ch>
2257 * vala/parser.y: set is_lvalue_ref for variables and fields
2258 * vala/valasemanticanalyzer.vala: variables and fields never transfer
2260 * vala/valamemorymanager.vala: use non-null parameter types, analyze
2262 * vala/valacodegenerator.vala: use non-null parameter types, support
2263 memory management for temporary variables in variable initializers,
2264 initialize all uninitialized references to null
2265 * vala/valareturnstatement.vala: visit end of full expression
2266 * vala/valatypereference.vala: add is_lvalue_ref property
2267 * vala/valavariabledeclarator.vala: visit end of full expression
2269 2006-06-14 Jürg Billeter <j@bitron.ch>
2271 * vala/valacodevisitor.vala: use non-null parameter types, add visit
2272 method for full expressions
2273 * vala/valasymbolresolver.vala: add some missing casts
2274 * vala/valasemanticanalyzer.vala: support memory management for
2276 * vala/valamemorymanager.vala: visitor to detect leaked references
2277 * vala/valacodegenerator.vala: add automatic memory management for
2278 temporary variables, add some missing casts
2279 * vala/valaassignment.vala: move source_reference to Expression
2280 * vala/valabinaryexpression.vala: move source_reference to Expression
2281 * vala/valacastexpression.vala: move source_reference to Expression
2282 * vala/valaconditionalexpression.vala: move source_reference to
2284 * vala/valaclass.vala: implement memory management methods
2285 * vala/valaexpression.vala: add source_reference, ref_leaked, and
2287 * vala/valaforstatement.vala: visit end of full expression
2288 * vala/valaifstatement.vala: visit end of full expression
2289 * vala/valainitializerlist.vala: move source_reference to Expression
2290 * vala/valainvocationexpression.vala: move source_reference to
2292 * vala/valaliteralexpression.vala: move source_reference to Expression
2293 * vala/valamemberaccess.vala: move source_reference to Expression
2294 * vala/valaobjectcreationexpression.vala: move source_reference to
2296 * vala/valaparenthesizedexpression.vala: move source_reference to
2298 * vala/valapostfixexpression.vala: move source_reference to Expression
2299 * vala/valasimplename.vala: move source_reference to Expression
2300 * vala/valastruct.vala: implement memory management methods
2301 * vala/valatype.vala: add abstract is_reference_counting,
2302 get_ref_function, and get_free_function methods
2303 * vala/valatypecheck.vala: move source_reference to Expression
2304 * vala/valaunaryexpression.vala: move source_reference to Expression
2305 * vala/valawhilestatement.vala: visit end of full expression
2306 * vala/Makefile.am: update
2307 * ccode/valaccodecommaexpression.vala
2308 * ccode/Makefile.am: update
2309 * compiler/valacompiler.vala: add enable-memory-management option
2310 * vapi/glib-2.0.vala: minor GType enhancements
2312 2006-06-07 Jürg Billeter <j@bitron.ch>
2314 * vala/valacodegenerator.vala: fix cname of constants, casts of self
2316 2006-06-07 Jürg Billeter <j@bitron.ch>
2318 * vala/valasemanticanalyzer.vala: add missing source dependencies
2319 * vala/valacodegenerator.vala: check parameter types at runtime
2321 2006-06-07 Jürg Billeter <j@bitron.ch>
2323 * vala/scanner.l: support REAL_LITERAL, TILDE, SIGNAL
2324 * vala/parser.y: support flags, signals, constructors, destructors, real
2325 literals, assignment operators, and non-null types
2326 * vala/valacodevisitor.vala: add visit methods for signals,
2327 constructors, destructors, and real literals
2328 * vala/valasymbolbuilder.vala: support signals, constructors,
2330 * vala/valasemanticanalyzer.vala: support constructors, real literals,
2331 and default arguments, fix lookup in namespaces of using directives
2332 * vala/valacodegenerator.vala: use default arguments and type register
2333 function classes, support constructors, interfaces, real literals,
2334 default arguments, casts, and signals, cast method arguments if
2336 * vala/valasourcefile.vala: use default arguments
2337 * vala/valaassignment.vala: add operator
2338 * vala/valacallback.vala: skeleton for callbacks
2339 * vala/valaclass.vala: add signals, constructor, and destructor
2340 * vala/valaclassregisterfunction.vala: get_type function for classes
2341 * vala/valaconstant.vala: use default arguments
2342 * vala/valaconstructor.vala
2343 * vala/valadestructor.vala
2344 * vala/valaenum.vala: use default arguments
2345 * vala/valaflags.vala
2346 * vala/valaflagsvalue.vala:
2347 * vala/valaformalparameter.vala: add default_expression
2348 * vala/valainstancecast.vala: dynamic instance cast
2349 * vala/valainterface.vala: add signals
2350 * vala/valainterfaceregisterfunction.vala: get_type function for
2352 * vala/valanamespace.vala: add flags, use default arguments
2353 * vala/valaproperty.vala: use default arguments
2354 * vala/valarealliteral.vala:
2355 * vala/valasignal.vala
2356 * vala/valastruct.vala: use default arguments
2357 * vala/valastringliteral.vala: use default arguments
2358 * vala/valatypereference.vala: add is_weak property
2359 * vala/valatyperegisterfunction.vala
2360 * vala/vala.h: update
2361 * vala/Makefile.am: update
2362 * ccode/valaccodeblock.vala: add prepend_statement method
2363 * ccode/valaccodewriter.vala: correctly indent multi-line comments
2364 * vapi/glib-2.0.vala: add float and double, use default arguments,
2365 temporarily remove astring
2367 2006-05-31 Jürg Billeter <j@bitron.ch>
2369 * vala/parser.y: support interfaces, adapt to Class/Struct/Type changes,
2370 improve error handling
2371 * vala/valacodevisitor.vala: support interfaces
2372 * vala/valasymbolbuilder.vala: improve error handling
2373 * vala/valasymbolresolver.vala: use operators to compare strings
2374 * vala/valasemanticanalyzer.vala: improve error handling, convert method
2375 argument and type mismatch warnings to errors, add skeleton for
2376 expressoin type checks, support string comparison operators
2377 * vala/valacodegenerator.vala: fix warning, create structs for
2378 interfaces, adapt to Class/Struct/Type changes, refactor and fix code
2379 in visit_simple_name and visit_member_access, use operators to compare
2381 * vala/valainterfacewriter.vala: use operators to compare strings
2382 * vala/valasourcefile.vala: fix warnings
2383 * vala/valaclass.vala: don't inherit from Struct
2384 * vala/valacodenode.vala: add error flag
2385 * vala/valaconstant.vala: add get_cname method
2386 * vala/valaenum.vala: override get_upper_case_cname method
2387 * vala/valaenumvalue.vala: adapt to Class/Struct/Type changes
2388 * vala/valafield.vala: use operators to compare strings
2389 * vala/valainterface.vala
2390 * vala/valainvocationexpression.vala: add add_argument method
2391 * vala/valamethod.vala: adapt to Class/Struct/Type changes, use
2392 operators to compare strings
2393 * vala/valanamespace.vala: support interfaces, use operators to compare
2395 * vala/valastringliteral.vala: fix warning
2396 * vala/valastruct.vala: inline visit_children method, use operators to
2398 * vala/valatype.vala: add abstract get_lower_case_cname method
2399 * vala/valatypereference.vala: add to_string method
2400 * vala/vala.h: update
2401 * vala/Makefile.am: update
2402 * vapi/glib-2.0.vala: small fixes
2404 2006-05-26 Jürg Billeter <j@bitron.ch>
2406 * vala/valasemanticanalyzer.vala: fix member access to namespaces
2407 * vala/valacodegenerator.vala: adapt to CCodeWriter changes
2408 * ccode/valaccodewriter.vala: don't touch file if nothing has changed,
2409 required to get incremental builds working
2410 * vapi/glib-2.0.vala: extend file functions
2412 * ccode/Makefile.am,vala/Makefile.am,compiler/Makefile.am: support
2415 2006-05-25 Jürg Billeter <j@bitron.ch>
2417 * vala/scanner.l: support ELLIPSIS, use g_strdup instead of strdup
2418 * vala/parser.y: support variable argument lists, type access modifiers
2419 * vala/valareport.vala: class to handle error reporting
2420 * vala/valasymbolbuilder.vala: switch to new error reporting scheme
2421 * vala/valasymbolresolver.vala: switch to new error reporting scheme
2422 * vala/valasemanticanalyzer.vala: process Constant and EnumValue symbol
2423 dependencies, check method argument types, find types of unary and
2424 binary expressions, remove dummy field, switch to new error reporting
2426 * vala/valacodegenerator.vala: support calling functions with variable
2427 argument lists, support break and continue statements, remove dummy fields,
2428 switch to new error reporting scheme
2429 * vala/valainterfacewriter.vala: visitor to write public vala api in one
2431 * vala/valasourcefile.vala: support field and property symbol
2432 dependencies, remove dummy field
2433 * vala/valaclass.vala: add is_abstract field
2434 * vala/valaenumvalue.vala: remove dummy field
2435 * vala/valaformalparameter.vala: add ellipsis property
2436 * vala/valamemberaccessibility.vala: add INTERNAL
2437 * vala/valamethod.vala: make parameters public, remove dummy field
2438 * vala/valaproperty.vala: remove dummy field
2439 * vala/valasymbol.vala: add name field and get_full_name method
2440 * vala/valatype.vala: add access field
2441 * vala/valatypereference.vala: switch to new error reporting scheme
2442 * ccode/valaccodeblock.vala: improve formatting
2443 * ccode/valaccodeifstatement.vala: improve formatting
2444 * ccode/valaccodewriter.vala: improve formatting
2445 * compiler/valacompiler.vala: add error handling, support multiple vapi
2446 directories, add --library option to generate public vala api
2447 * vapi/glib-2.0.vala: moved from bindings, add static GLib.stdout field,
2448 correctly mark functions with variable argument lists, add File.test
2451 * configure.ac,Makefile.am,ccode/Makefile.am,vala/Makefile.am,
2452 vapi/Makefile.am,compiler/Makefile.am: add build system
2454 * remove valac subdirectory: Bootstrap compiler is now obsolete.
2456 2006-05-24 Jürg Billeter <j@bitron.ch>
2458 Compiler is now self-hosting.
2460 * vala/parser.y: support type checks, field attributes, and virtual and
2461 override method modifiers
2462 * vala/valacodevisitor.vala: support type checks
2463 * vala/valasymbolbuilder.vala: correct generated property accessors
2464 * vala/valaattributeprocessor.vala: process field attributes
2465 * vala/valasemanticanalyzer.vala: support virtual methods and type
2467 * vala/valacodegenerator.vala: support properties, private fields,
2468 static fields, virtual methods, field initializers, while statements,
2469 foreach statements, instance last methods, postfix expressions, type
2471 * vala/valaclass.vala: correct source reference, add get_properties
2473 * vala/valafield.vala: visit initializer, support cname attribute
2474 * vala/valamethod.vala: support ReturnsModifiedPointer and InstanceLast
2475 attributes, add is_virtual, is_override, and base_method fields, add
2476 get_real_cname method
2477 * vala/valaproperty.vala: add get_upper_case_cname method
2478 * vala/valastruct.vala: add has_private_fields attribute, add
2480 * vala/valatypecheck.vala
2481 * vala/vala.h: update
2482 * ccode/valaccodebreakstatement.vala
2483 * ccode/valaccodecasestatement.vala
2484 * ccode/valaccodecontinuestatement.vala
2485 * ccode/valaccodedeclaration.vala: renamed from
2486 CCodeDeclarationStatement, support function declarators
2487 * ccode/valaccodedeclarator.vala: abstract base class for variable and
2488 function declarators
2489 * ccode/valaccodefunctiondeclarator.vala:
2490 * ccode/valaccodestruct.vala: support function declarations by adding
2491 add_declaration method
2492 * ccode/valaccodeswitchstatement.vala
2493 * ccode/valaccodeunaryexpression.vala: add postfix increment and
2495 * ccode/valaccodevariabledeclarator.vala: inherit from CCodeDeclarator
2496 * ccode/valaccodewhilestatement.vala
2498 2006-05-23 Jürg Billeter <j@bitron.ch>
2500 * vala/valacodevisitor.vala: support initializer lists
2501 * vala/valacodegenerator.vala: support constant arrays and initializer
2503 * vala/valaconstant.vala: visit initializer
2504 * vala/valainitializerlist.vala: add accept method
2505 * vala/valastruct.vala: visit constants later than fields due to
2506 constant initialization
2507 * vala/valatypereference.vala: add get_const_cname method
2508 * ccode/valaccodeinitializerlist.vala
2510 2006-05-22 Jürg Billeter <j@bitron.ch>
2512 * vala/parser.y: support abstract methods and static fields
2513 * vala/valasourcefile.vala: support parameter symbol dependencies
2514 * vala/valasymbolbuilder.vala: insert default body for get accessors
2515 * vala/valasemanticanalyzer.vala: add property type dependency
2516 * vala/valacodegenerator.vala: add constants, private static fields,
2517 main function, property accessors, this, casting for member access
2518 * vala/valablock.vala: add add_statement method
2519 * vala/valafield.vala: add instance field
2520 * vala/valamethod.vala: add is_abstract field
2521 * valac/generator.c: mark generated properties as writable
2523 2006-05-22 Jürg Billeter <j@bitron.ch>
2525 * vala/valacodegenerator.c: add class instance private struct, type
2526 register function, class init function, instance init function;
2527 support access to private members
2528 * ccode/valaccodedeclarationstatement.vala: support static modifier
2530 2006-05-21 Jürg Billeter <j@bitron.ch>
2532 * vala/scanner.l: support file comments, BREAK, CONTINUE
2533 * vala/parser.y: support break and continue, add more comments
2534 * vala/valacodecontext.vala: find cyclic header dependencies
2535 * vala/valasourcefile.vala: add get_namespaces method, add dependency
2536 information, add add_symbol_dependency method, add
2537 SourceFileDependencyType enum
2538 * vala/valasourcefilecycle.vala
2539 * vala/valacodevisitor.vala: support break and continue statements
2540 * vala/valaparser.vala: support file comments
2541 * vala/valasemanticanalyzer.vala: record dependency information
2542 * vala/valacodegenerator.vala: add include directives, type forward
2543 declarations, once section, enum values, method return types, and more
2545 * vala/valablock.vala, vala/valadeclarationstatement.vala,
2546 vala/valaemptystatement.vala, vala/valaexpressionstatement.vala,
2547 vala/valaforeachstatement.vala, vala/valaforstatement.vala,
2548 vala/valaifstatement.vala, vala/valareturnstatement.vala,
2549 vala/valastatement.vala, vala/valawhilestatement.vala: move
2550 source_reference property to Statement class
2551 * vala/valaclass.vala, vala/valaenum.vala, vala/valastruct.vala,
2552 vala/valatype.vala: move name, source_reference, namespace, and
2553 get_cheader_filenames to Type class
2554 * vala/valabreakstatement.vala
2555 * vala/valacontinuestatement.vala
2556 * vala/valaenum.vala: fix cname, add get_upper_case_cname method
2557 * vala/valaenumvalue.vala: add get_cname method
2558 * vala/valafield.vala: add access field
2559 * vala/valanamespace.vala: add get_structs, get_classes, and
2560 get_cheader_filenames methods, support cheader_filename attribute
2561 * vala/valastruct.vala: support cheader_filename attribute
2562 * vala/valatypereference.vala: support void cname
2563 * vala/vala.h: update
2564 * ccode/valaccodeblock.vala: support comments before statements
2565 * ccode/valaccodeenum.vala: optionally use typedef
2566 * ccode/valaccodefunction.vala: add copy method
2567 * ccode/valaccodenewline.vala
2568 * ccode/valaccodeoncesection.vala
2569 * ccode/valaccodewriter.vala: use whole line for comments
2570 * bindings/glib-2.0.vala: add cheader_filename attributes, extend string
2572 * valac/generator.c: fix private field access, include string.h
2574 2006-05-19 Jürg Billeter <j@bitron.ch>
2576 * vala/valacodegenerator.vala: include header file in corresponding
2577 source file, generate class macros and typedefs
2578 * ccode/valaccodeincludedirective.vala
2579 * ccode/valaccodemacroreplacement.vala: c macro definition
2580 * ccode/valaccodetypedefinition.vala: c typedef
2581 * bindings/glib-2.0.vala: correct comment
2583 2006-05-18 Jürg Billeter <j@bitron.ch>
2585 * vala/valacodecontext.vala: add get_source_files method
2586 * vala/valasourcefile.vala: add pkg flag
2587 * vala/valasymbolresolver.vala: use GLib.Object as default base class
2588 * vala/valacodegenerator.vala: ignore package bindings, fix names of
2590 * bindings/glib-2.0.vala: renamed from GLib.vala, add g_build_filename
2591 * compiler/valacompiler.vala: add pkg and pkgdir options
2593 2006-05-18 Jürg Billeter <j@bitron.ch>
2595 * vala/valacodegenerator.vala: add method parameters, public instance
2596 field access, invocation arguments
2597 * vala/valamethod.vala: add get_parameters method
2598 * ccode/valaccodeformalparameter.vala
2599 * ccode/valaccodefunction.vala: use CCodeFormalParameter
2600 * ccode/valaccodememberaccess.vala
2601 * valac/scanner.l: support ASSIGN_BITWISE_OR, BITWISE_OR
2602 * valac/parser.y: support bitwise or
2603 * valac/context.h: support bitwise or
2604 * valac/generator.c: support bitwise or
2606 2006-05-18 Jürg Billeter <j@bitron.ch>
2608 * vala/parser.y: support member and access modifiers, static methods
2609 * vala/valaattributeprocessor.vala: process method attributes
2610 * vala/valaclass.vala: don't set parent_type member of children
2611 * vala/valaconstant.vala: remove unnecessary parent_type member
2612 * vala/valafield.vala: remove unnecessary parent_type member
2613 * vala/valamethod.vala: support cname attribute
2614 * vala/valanamespace.vala: add methods
2615 * vala/valaproperty.vala: remove unnecessary parent_type member
2616 * vala/valastruct.vala: don't set parent_type member of children
2618 2006-05-18 Jürg Billeter <j@bitron.ch>
2620 * vala/parser.y: adapt to BinaryOperator enum changes
2621 * vala/valacodegenerator.vala: add operators to unary and binary
2623 * vala/valabinaryexpression.vala: correct enum value names
2624 * ccode/valaccodebinaryexpression.vala: add operator
2625 * ccode/valaccodeunaryexpression.vala
2627 2006-05-18 Jürg Billeter <j@bitron.ch>
2629 * vala/parser.y: support namespace attributes
2630 * vala/valaattributeprocessor.vala: process namespace and class
2632 * vala/valacodegenerator.vala: use correct symbol names
2633 * vala/valamethod.vala: add cname
2634 * vala/valanamespace.vala: add cprefix, support cprefix attribute
2635 * vala/valastruct.vala: prefix cname with namespace cprefix
2636 * bindings/GLib.vala: add tolower to unichar
2637 * valac/parser.y: rename namespace attribute cname to lower_case_cprefix
2639 2006-05-18 Jürg Billeter <j@bitron.ch>
2641 * update reference and property annotations
2642 * switch string struct to utf-8
2643 * valac/context.c: set source file in root namespace
2644 * valac/generator.c: don't include bindings stub header
2646 2006-05-17 Jürg Billeter <j@bitron.ch>
2648 * vala/valanamespace.vala: implement camel_case_to_lower_case method
2649 * bindings/GLib.vala: extend string types
2650 * valac/generator.c: support access to struct fields
2652 2006-05-17 Jürg Billeter <j@bitron.ch>
2654 * vala/parser.y: support variable declarators, subtyping, constants,
2655 properties, and enums
2656 * vala/valacodevisitor.vala: support formal parameters, property
2657 accessors, named arguments, and parenthesized expressions
2658 * vala/valasymbolbuilder.vala: visit enum values, constants, formal
2659 parameters, properties, and blocks
2660 * vala/valasymbolresolver.vala: save base class, accept void type,
2661 support type references with namespace name
2662 * vala/valasemanticanalyzer.vala: visitor to find static types of
2664 * vala/valacodegenerator.vala: support parenthesized expressions
2665 * vala/valablock.vala: add begin and end visit events
2666 * vala/valaclass.vala: support base types and properties
2667 * vala/valaenum.vala: add values
2668 * vala/valaenumvalue.vala
2669 * vala/valaexpression.vala: add generic symbol reference
2670 * vala/valaforeachstatement.vala: add begin and end visit events
2671 * vala/valaformalparameter.vala: add visit event
2672 * vala/valaliteral.vala: mark class as abstract
2673 * vala/valamethod.vala: add return_type
2674 * vala/valanamedargument.vala: add accept method
2675 * vala/valanamespace.vala: visit fields
2676 * vala/valaobjectcreationexpression.vala: visit arguments
2677 * vala/valaparenthesizedexpression.vala: add visit event
2678 * vala/valaproperty.vala: add accessors
2679 * vala/valapropertyaccessor.vala
2680 * vala/valasimplename.vala: code style update
2681 * vala/valastruct.vala: add constants
2682 * vala/valavariabledeclarator.vala: add type reference
2683 * vala/vala.h: update
2684 * compiler/valacompiler.vala: invoke SemanticAnalyzer
2685 * ccode/valaccodefragment.vala: code style update
2686 * ccode/valaccodeparenthesizedexpression.vala:
2687 * valac/parser.y: support replacement of readonly fields
2688 * valac/context.c: resolve types in operation expressions
2690 2006-05-16 Jürg Billeter <j@bitron.ch>
2692 * vala/scanner.l: fix multi-line comments
2693 * vala/valacodegenerator.vala: basic statement and expression handling
2694 * vala/valacodevisitor.vala: support variable declaration
2695 * vala/valasymbolbuilder.vala: adapt to visitor changes
2696 * vala/valaclass.vala: remove members already available in Struct
2697 * vala/valacodenode.vala: add ccodenode field
2698 * vala/valadeclarationstatement.vala: visit declaration
2699 * vala/valaexpressionstatement.vala: visit code containers after child
2701 * vala/valalocalvariabledeclaration.vala: add accept method
2702 * vala/valamethod.vala: add begin and end visit events
2703 * vala/valanamespace.vala: add lower_case_cprefix
2704 * vala/valastruct.vala: define get_upper_case_cname method
2705 * vala/valatype.vala: declare get_upper_case_cname method
2706 * vala/valatypereference.vala: add get_upper_case_cname method
2707 * vala/valavariabledeclarator.vala: add accept method
2708 * ccode/valaccodewriter.vala: formatting fixes
2709 * ccode/valaccodeassignment.vala
2710 * ccode/valaccodebinaryexpression.vala
2711 * ccode/valaccodeblock.vala: use CCodeStatement
2712 * ccode/valaccodeconstant.vala
2713 * ccode/valaccodedeclarationstatement.vala
2714 * ccode/valaccodeemptystatement.vala
2715 * ccode/valaccodeexpression.vala
2716 * ccode/valaccodeexpressionstatement.vala
2717 * ccode/valaccodeforstatement.vala
2718 * ccode/valaccodefunction.vala: formatting fixes
2719 * ccode/valaccodefunctioncall.vala
2720 * ccode/valaccodeidentifier.vala
2721 * ccode/valaccodeifstatement.vala
2722 * ccode/valaccodereturnstatement.vala
2723 * ccode/valaccodestatement.vala
2724 * ccode/valaccodestruct.vala: formatting fixes
2725 * ccode/valaccodevariabledeclarator.vala
2726 * bindings/GLib.vala: extend string types
2727 * valac/context.c: resolve types in named argument list in object
2730 2006-05-16 Jürg Billeter <j@bitron.ch>
2732 * vala/parser.y: fix unary expressions
2733 * vala/valacodegenerator.vala: add visit_block method
2734 * vala/valacodevisitor.vala: add visit methods for statements,
2735 expressions, and literals
2736 * vala/valaassignment.vala: add accept method
2737 * vala/valabinaryexpression.vala: add accept method
2738 * vala/valablock.vala: add accept method
2739 * vala/valabooleanliteral.vala: add accept method
2740 * vala/valacastexpression.vala: add accept method
2741 * vala/valacharacterliteral.vala: add accept method
2742 * vala/valaconditionalexpression.vala: add accept method
2743 * vala/valaconstant.vala: visit code containers after child elements
2744 * vala/valadeclarationstatement.vala: add accept method
2745 * vala/valaemptystatement.vala: add accept method
2746 * vala/valaexpressionstatement.vala: add accept method
2747 * vala/valafield.vala: visit code containers after child elements
2748 * vala/valaforeachstatement.vala: add accept method
2749 * vala/valaformalparameter.vala: add accept method
2750 * vala/valaforstatement.vala: add accept method
2751 * vala/valaifstatement.vala: add accept method
2752 * vala/valaintegerliteral.vala: add accept method
2753 * vala/valainvocationexpression.vala: add accept method
2754 * vala/valaliteralexpression.vala: add accept method
2755 * vala/valamemberaccess.vala: add accept method
2756 * vala/valamethod.vala: add accept method
2757 * vala/valanullliteral.vala: add accept method
2758 * vala/valaobjectcreationexpression.vala: add accept method
2759 * vala/valaparenthesizedexpression.vala: add accept method
2760 * vala/valapostfixexpression.vala: add accept method
2761 * vala/valareturnstatement.vala: add accept method
2762 * vala/valasimplename.vala: add accept method
2763 * vala/valastringliteral.vala: add accept method
2764 * vala/valaunaryexpression.vala: fix constructor, add accept method
2765 * vala/valawhilestatement.vala: add accept method
2766 * ccode/valaccodefunction.vala: renamed from CCodeMethod
2768 2006-05-16 Jürg Billeter <j@bitron.ch>
2770 * vala/parser.y: support logical AND and OR expressions, conditional
2771 expressions, assignments, constants, method parameters, and properties
2772 * vala/valacodevisitor.vala: add constant and property visits
2773 * vala/valaassignment.vala
2774 * vala/valabinaryexpression.vala: add bitwise xor, AND, and OR
2775 * vala/valaconditionalexpression.vala
2776 * vala/valaconstant.vala
2777 * vala/valaformalparameter.vala
2778 * vala/valainitializerlist.vala
2779 * vala/valamemberaccess.vala: add source_reference
2780 * vala/valamethod.vala: add parameters
2781 * vala/valaproperty.vala
2782 * vala/vala.h: update
2784 2006-05-16 Jürg Billeter <j@bitron.ch>
2786 * vala/parser.y: support member access, multiplicative, additive, shift,
2787 equality, relational, and bitwise expressions
2788 * vala/valabinaryexpression.vala
2789 * vala/valamemberaccess.vala: add constructor
2790 * vala/vala.h: update
2792 2006-05-15 Jürg Billeter <j@bitron.ch>
2794 * vala/scanner.l: support assign operators
2795 * vala/parser.y: support assign operators and attributes
2796 * vala/valaattributeprocessor.vala: visitor to process compiler
2798 * vala/valacodegenerator.vala: support structs, enums, and methods
2799 * vala/valacodenode.vala: support attributes
2800 * vala/valaattribute.vala
2801 * vala/valamemberaccessibility.vala
2802 * vala/valamethod.vala
2803 * vala/valastruct.vala: support CCode (cname) attribute
2804 * vala/vala.h: update
2805 * compiler/valacompiler.vala: invoke AttributeProcessor
2806 * ccode/valaccodeblock.vala
2807 * ccode/valaccodeenum.vala
2808 * ccode/valaccodemethod.vala
2809 * ccode/valaccodemodifiers.vala
2810 * bindings/GLib.vala: add string cmp method
2811 * valac/scanner.l: support BITWISE_AND
2812 * valac/parser.y: support bitwise and
2813 * valac/context.h: add bitwise and
2814 * valac/generator.c: support enum dependencies and bitwise and
2816 2006-05-14 Jürg Billeter <j@bitron.ch>
2818 * vala/scanner.l: support OPEN_CAST_PARENS, IS, WHILE
2819 * vala/parser.y: support structs, enums, and fields, cast, postfix,
2820 while, ref types, and generic type parameters; fix comments
2821 * vala/valacodecontext.vala: add root symbol
2822 * vala/valasourcefile.vala: add using directives, c filenames
2823 * vala/valacodevisitor.vala: add begin and end visits for some container
2824 types, add struct, enum, field, type parameter, namespace reference,
2825 and type reference visits
2826 * vala/valaparser.vala: adapt to visitor changes
2827 * vala/valasymbolbiulder.vala: visitor to fill symbol table
2828 * vala/valasymbolresolver.vala: visitor to resolve symbol references
2829 * vala/valacodegenerator.vala: add beginning of code generation
2830 * vala/valacodenode.vala: add symbol reference
2831 * vala/valacastexpression.vala
2832 * vala/valaclass.vala: derive from struct
2833 * vala/valaenum.vala
2834 * vala/valaexpression.vala: add static_type, field_reference, and
2835 method_reference fields
2836 * vala/valafield.vala
2837 * vala/valamemberaccess.vala
2838 * vala/valanamespace.vala: add structs, enums, and fields
2839 * vala/valanamespacereference.vala
2840 * vala/valapostfixexpression.vala
2841 * vala/valasourcereference.vala: adapt to comment changes
2842 * vala/valastringliteral.vala: add eval method
2843 * vala/valastruct.vala
2844 * vala/valasymbol.vala
2845 * vala/valatype.vala
2846 * vala/valatypeparameter.vala:
2847 * vala/valatypereference.vala: add type, type_parameter, is_ref, and
2848 is_out fields, add get_cname method
2849 * vala/valavariabledeclarator.vala: add name and initializer fields
2850 * vala/valawhilestatement.vala:
2851 * vala/vala.h: update
2852 * compiler/valacompiler.vala: run SymbolBuilder and SymbolResolver
2853 * ccode/valaccodewriter.vala
2854 * ccode/valaccodecomment.vala
2855 * ccode/valaccodefragment.vala
2856 * ccode/valaccodenode.vala
2857 * ccode/valaccodestruct.vala
2858 * bindings/GLib.vala: add/extend ustring, Path, Object, File, HashTable
2859 * valac/scanner.l: support OPEN_CAST_PARENS, OP_AND, OP_OR, IS, WHILE
2860 * valac/parser.y: support cast, while, include_filename ccode attribute,
2861 AND and OR expressions, IS type checks, unary minus
2862 * valac/context.h: add while statements, cast and IS expressions, and
2863 AND and OR operators
2864 * valac/context.c: support cast, IS, while; fix if
2865 * valac/generator.c: support cast, IS, pointer arithmetic, namespace
2866 methods, imported include files
2867 * valac/driver.c: add symbol alias
2869 2006-05-07 Jürg Billeter <j@bitron.ch>
2871 * vala/scanner.l: tokenizer for new vala compiler
2872 * vala/parser.y: parser vor new vala compiler
2873 * vala/valablock.vala
2874 * vala/valabooleanliteral.vala
2875 * vala/valacharacterliteral.vala
2876 * vala/valaclass.vala: add methods
2877 * vala/valadeclarationstatement.vala
2878 * vala/valaemptystatement.vala
2879 * vala/valaexpression.vala
2880 * vala/valaexpressionstatement.vala
2881 * vala/valaforeachstatement.vala
2882 * vala/valaforstatement.vala
2883 * vala/valaifstatement.vala
2884 * vala/valaintegerliteral.vala
2885 * vala/valainvocationexpression.vala
2886 * vala/valaliteral.vala
2887 * vala/valaliteralexpression.vala
2888 * vala/valalocalvariabledeclaration.vala
2889 * vala/valamethod.vala
2890 * vala/valanamedargument.vala
2891 * vala/valanullliteral.vala
2892 * vala/valaobjectcreationexpression.vala
2893 * vala/valaparenthesizedexpression.vala
2894 * vala/valareturnstatement.vala
2895 * vala/valasimplename.vala
2896 * vala/valastatement.vala
2897 * vala/valastringliteral.vala
2898 * vala/valatypereference.vala
2899 * vala/valaunaryexpression.vala
2900 * vala/valavariabledeclarator.vala
2901 * vala/valacodevisitor.vala: add visit_method skeleton
2902 * vala/valacodegenerator.vala: do.
2903 * vala/vala.h: include generated header files
2904 * valac/generator.c: support bool and enum properties, support enums
2906 2006-05-06 Jürg Billeter <j@bitron.ch>
2908 * vala/valacodecontext.vala
2909 * vala/valasourcefile.vala
2910 * vala/valasourcereference.vala: filename, line, and comment container
2911 * vala/valacodenode.vala: abstract code node
2912 * vala/valanamespace.vala: namespace node
2913 * vala/valaclass.vala: class node
2914 * vala/valacodevisitor.vala: abstract syntax tree visitor
2915 * vala/valaparser.vala: vala parser
2916 * vala/valacodegenerator.vala: code generator skeleton
2917 * compiler/valacompiler.vala: compiler driver
2918 * bindings/GLib.vala: add bindings for GList and GOptionContext
2919 * valac/scanner.l: support multi-line comments, ABSTRACT, INTERFACE,
2921 * valac/parser.y: replace AT by HASH, support readonly fields
2922 * valac/context.h: small fixes
2923 * valac/context.c: small fixes
2924 * valac/generator.c: fix override methods, basic support for properties
2926 2006-05-03 Jürg Billeter <j@bitron.ch>
2928 * valac/scanner.l: support OP_NEG, CONSTRUCT, FOREACH, IN
2929 * valac/parser.y: add foreach, construct properties; merge modifiers to
2930 resolve parser conflicts
2931 * valac/context.h: merge modifiers
2932 * valac/context.c: support namespace fields, resolve types in
2933 assignments, invocations, and if, for, and foreach statements
2934 * valac/generator.c: support negation operator, inherited fields in
2935 object variables, foreach statements for arrays and GList, fix
2936 circular dependencies
2938 2006-05-02 Raffaele Sandrini <rasa@gmx.ch>
2940 * tests/test-008.vala: add tests for base fields
2941 * valac/generator.c: remove klass local variable, add support for
2944 2006-05-01 Jürg Billeter <j@bitron.ch>
2946 * valac/scanner.l: support ENUM, FLAGS, STRUCT
2947 * valac/parser.y: add structs, generic types, enums, flags, attributes,
2948 ref and out parameters
2949 * valac/context.h: add ValaFlags, ValaFlagsValue, and ValaAnnotation
2951 * valac/context.c: support bool, uint, pointer, generic types
2952 * valac/generator.h: save pointer to current struct
2953 * valac/generator.c: support structs, ReturnsModifiedPointer, include
2956 2006-04-30 Jürg Billeter <j@bitron.ch>
2958 * valac/scanner.l: support AT, CONST, VALA_FALSE, VALA_NULL, OUT, REF,
2959 THIS, VALA_TRUE, USING, VAR, LITERAL_CHARACTER
2960 * valac/parser.y: add character, boolean, and null literals, using
2961 directive, @ type qualifier, constants, ref and out variables,
2962 array element access, this access, struct and array initializer,
2964 * valac/context.h: add ValaEnum, ValaConstant, and ValaEnumValue structs
2965 * valac/context.c: support constants, struct members, enums, var type,
2967 * valac/generator.h: save pointer to current class
2968 * valac/generator.c: support constants, boolean and null literals,
2969 array element access, using directives, this access, enums, private
2970 static fields, ref and out variables, struct and array initializer,
2971 boolean, character, and null literal, var type
2973 2006-04-27 Raffaele Sandrini <rasa@gmx.ch>
2975 * tests/test-008.vala:
2976 * tests/test-009.vala: add
2980 * valac/generator.c:
2981 * valac/context.h: add field and property support (property parse only
2983 * AUTHORS: add myself
2985 2006-04-26 Jürg Billeter <j@bitron.ch>
2987 * valac/scanner.l: support OVERRIDE, VIRTUAL
2988 * valac/parser.y: add virtual methods
2989 * valac/context.h: support virtual methods, improve init and class_init
2990 * valac/context.c: set symbol in ValaMethod struct
2991 * valac/generator.c: support virtual methods
2992 * tests/test-007.vala: test virtual method declaration and invocation
2994 2006-04-26 Jürg Billeter <j@bitron.ch>
2996 * valac/scanner.l: support OPEN_BRACKET, CLOSE_BRACKET, OP_INC, OP_DEC,
2997 OP_EQ, OP_NE, OP_LE, OP_GE, OP_LT, OP_GT, MINUS, STAR, DIV, ELSE, FOR,
2999 * valac/parser.y: add array type references, equality expressions,
3000 relational expressions, multiplicative expressions, postfix
3001 operations, object creation, if conditionals, for loops
3002 * valac/context.h: add ValaNamedArgument struct, support if and for
3004 * valac/context.c: resolve types in object creation expressions of
3005 variable initializers
3006 * valac/generator.c: support array type references, init and class_init
3007 methods, more operations, object creation, for loops, if conditionals,
3008 call g_type_init in main
3009 * tests/test-006.vala: test instance method invocation, object creation,
3010 for loop, if conditional, multiplicative expression
3012 2006-04-25 Jürg Billeter <j@bitron.ch>
3014 * valac/parser.y: save cname in class, save location of statements and
3016 * valac/context.h: add ValaStruct struct
3017 * valac/context.c: support symbols from methods and structs, add int
3018 and string fundamental types, resolve types in local variable
3020 * valac/generator.h: save pointer to current method block
3021 * valac/generator.c: add special handling for main method, basic support
3022 for method invocations, literals, member access, simple names,
3023 additive expressions, return statments, blocks
3024 * tests/test-005.vala: test static method invocation, literal integer,
3025 simple name, additive expression, return statement, block, main method
3027 2006-04-24 Jürg Billeter <j@bitron.ch>
3029 * valac/scanner.l: support single-line comments, ASSIGN, PLUS, RETURN,
3030 LITERAL_INTEGER, LITERAL_STRING
3031 * valac/parser.y: add basic statements and expressions
3032 * valac/context.h: add ValaStatement, ValaVariableDeclaration,
3033 ValaVariableDeclarator, and ValaExpression structs
3034 * valac/context.c: remove unreachable line
3036 2006-04-24 Jürg Billeter <j@bitron.ch>
3038 * valac/scanner.l: set token location, support OPEN_PARENS,
3039 CLOSE_PARENS, SEMICOLON, PUBLIC, STATIC
3040 * valac/parser.y: save symbol location, output exact error location,
3041 support method declarations
3042 * valac/context.h: add ValaLocation, ValaMethod, and ValaFormalParameter
3043 structs, add location to ValaClass and ValaTypeReference structs
3044 * valac/context.c: output error location, support method declarations
3045 * valac/generator.c: support method declarations
3046 * valac/driver.c: add comment
3047 * tests/test-004.vala: test method declaration
3049 2006-04-22 Jürg Billeter <j@bitron.ch>
3051 * valac/scanner.l: support DOT, COLON, and COMMA
3052 * valac/parser.y: save lower and upper case cnames in namespace and
3053 class objects, support base classes
3054 * valac/context.h: add ValaSymbol and ValaTypeReference structs, add
3055 cnames to ValaNamespace and ValaClass structs
3056 * valac/context.c: add symbol handling, type resolving, set cnames in
3058 * valac/generator.c: remove cname generation, support base classes
3059 * valac/driver.c: add symbols and resolve types
3060 * tests/test-003.vala: test base class