1 2007-07-09 Jürg Billeter <j@bitron.ch>
3 * vala/parser.y: support # modifier to transfer ownership in method
6 2007-07-05 Jürg Billeter <j@bitron.ch>
8 * vapi/glib-2.0.vala: fix TimeVal binding
9 * vapi/dbus-glib-1.vala, vapi/hal.deps, vapi/hal.vala: add experimental
11 * vapi/Makefile.am: update
13 2007-07-04 Jürg Billeter <j@bitron.ch>
15 * vapi/glib-2.0.vala: update to new GRegex API
17 2007-07-03 Jürg Billeter <j@bitron.ch>
19 * vala/valainterfacewriter.vala: write cprefix and lower_case_cprefix
20 of namespaces and write cheader_filename of interfaces
21 * vala/valanamespace.vala: make set_cprefix and set_lower_case_cprefix
23 * ccode/valaccodewriter.vala, vala/valainterfacewriter.vala,
24 gobject/valaccodecompiler.vala, compiler/valacompiler.vala,
25 vapi/glib-2.0.vala, vapigen/valagidlparser.vala,
26 vapigen/valavapigen.vala: split GLib.File into GLib.FileStream and
27 GLib.FileUtils to not conflict with GVFS
28 * vala/valagidlparser.vala: improve support for GVFS
29 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
31 * vapi/gio-standalone.vala, vapi/packages/gio-standalone/: add
32 experimental VAPI for GVFS
33 * vapi/Makefile.am: update
35 2007-07-01 Jürg Billeter <j@bitron.ch>
37 * vapi/glib-2.0.vala: add more string utility functions and GDate
38 support, based on patch by Michael Lawrence, fixes bug 452015
40 2007-07-01 Jürg Billeter <j@bitron.ch>
42 * vala/parser.y, vala/valasymbolbuilder.vala,
43 vala/valasymbolresolver.vala, vala/valaenum.vala: add basic support
46 2007-06-30 Jürg Billeter <j@bitron.ch>
48 * vala/valasymbolbuilder.vala: fix current_symbol handling in
49 visit_property_accessor
50 * vapigen/valagidlparser.vala: add missing NoArrayLength attribute,
51 support hiding signals
52 * vapi/glib-2.0.vala: add GConnectFlags
53 * vapi/packages/pango/pango.gidl, vapi/pango.vala: updated to
55 * vapi/packages/gdk-2.0/gdk-2.0.gidl,
56 vapi/packages/gtk+-2.0/gtk+-2.0.gidl,
57 vapi/packages/gtk+-2.0/gtk+-2.0.metadata, vapi/gdk-2.0.vala,
58 vapi/gtk+-2.0.vala: updated to GTK+ 2.11.4, some small
59 GtkTreeModel/GtkTreeStore fixes
61 2007-06-15 Jürg Billeter <j@bitron.ch>
63 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
64 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
65 vala/valasemanticanalyzer.vala, vala/valasymbolbuilder.vala,
66 vala/valasymbolresolver.vala, vala/valaconstant.vala,
67 vala/valaconstructor.vala, vala/valacreationmethod.vala,
68 vala/valadestructor.vala, vala/valafield.vala,
69 vala/valaformalparameter.vala, vala/valamethod.vala,
70 vala/valaproperty.vala, vala/valapropertyaccessor.vala,
71 vala/valasignal.vala, gobject/valacodegenerator.vala,
72 gobject/valacodegeneratormethod.vala,
73 gobject/valacodegeneratorsignal.vala: move iteration of symbol nodes
74 from accept to accept_children method
76 2007-06-15 Jürg Billeter <j@bitron.ch>
78 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
79 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
80 vala/valaparser.vala, vala/valasemanticanalyzer.vala,
81 vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
82 vala/valacallback.vala, vala/valaclass.vala, vala/valaenum.vala,
83 vala/valaflags.vala, vala/valainterface.vala, vala/valastruct.vala,
84 gobject/valacodegenerator.class, gobject/valacodegeneratorclass.vala,
85 gobject/valacodegeneratorinterface.vala,
86 gobject/valacodegeneratorstruct.vala: move iteration of data types
87 from accept to accept_children method
89 2007-06-15 Jürg Billeter <j@bitron.ch>
91 * vala/valaattributeprocessor.vala, vala/valacodevisitor.vala,
92 vala/valainterfacewriter.vala, vala/valamemorymanager.vala,
93 vala/valaparser.vala, vala/valasemanticanalyzer.vala,
94 vala/valasourcefile.vala, vala/valasymbolbuilder.vala,
95 vala/valasymbolresolver.vala, vala/valacodenode.vala,
96 vala/valanamespace.vala, gobject/valacodegenerator.vala,
97 gobject/valacodegeneratorsourcefile.vala, vapigen/valagidlparser.vala:
98 move iteration of source files and namespaces from accept to
99 accept_children method
101 2007-06-15 Jürg Billeter <j@bitron.ch>
103 * vala/valacodecontext.vala, gobject/valaccodecompiler.vala,
104 compiler/valacompiler.vala: enhance commandline interface, add support
105 for invoking c compiler
106 * gobject/Makefile.am: update
107 * vapi/glib-2.0.vala: add shell-related utilities
109 2007-06-05 Jürg Billeter <j@bitron.ch>
111 * gobject/valacodegeneratorassignment.vala: correct invocation of setter
112 method of inherited properties, fixes bug 443527
113 * gobject/valacodegeneratormemberaccess.vala: remove outdated comment
115 2007-06-05 Jürg Billeter <j@bitron.ch>
117 * vala/valainvocationexpression.vala: support storing sizes of array
118 dimensions for methods returning arrays
119 * gobject/valacodegenerator.vala,
120 gobject/valacodegeneratorinvocationexpression.vala: add length
121 argument for methods returning arrays
122 * vapi/glib-2.0.vala: add missing NoArrayLength attributes
126 2007-06-05 Jürg Billeter <j@bitron.ch>
128 * gobject/valacodegenerator.vala: allow value-type arrays of unknown
129 length, assert at runtime when trying to iterate over such arrays
131 2007-05-31 Jürg Billeter <j@bitron.ch>
133 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
134 vala/valacodevisitor.vala, vala/valasizeofexpression.vala,
135 gobject/valacodegenerator.vala: support sizeof expression
136 * vala/vala.h, vala/Makefile.am: update
137 * vapi/glib-2.0.vala: add struct_size param to GLib.Source construction
140 2007-05-14 Jürg Billeter <j@bitron.ch>
142 * vala/valasemanticanalyzer.vala: improve argument checks of invocation
143 expression, fixes bug 435854
145 2007-05-10 Jürg Billeter <j@bitron.ch>
147 * ccode/valaccodeblock.vala, ccode/valaccodedeclaration.vala,
148 ccode/valaccodedeclarator.vala, ccode/valaccodefragment.vala,
149 ccode/valaccodefunctiondeclarator.vala, ccode/valaccodenode.vala,
150 ccode/valaccodeoncesection.vala, ccode/valaccodestruct.vala,
151 ccode/valaccodetypedefinition.vala,
152 ccode/valaccodevariabledeclarator.vala: separate declaration output
153 * vala/parser.y: remove comma at end of enum
154 * vala/valaclass.vala, vala/valastruct.vala: remove unused methods
155 * vala/Makefile.am: update
156 * gobject/valacodegeneratorsourcefile.vala: support declaration
158 * gobject/valaclassregisterfunction.vala,
159 gobject/valainterfaceregisterfunction.vala,
160 gobject/valatyperegisterfunction.vala: move from vala directory,
161 move interface info declarations to the beginning of the block
162 * gobject/Makefile.am: update
164 2007-05-09 Jürg Billeter <j@bitron.ch>
166 * ccode/valaccodeenum.vala: remove comma at end of generated enumerator
167 list, fixes gcc warning
169 2007-05-09 Jürg Billeter <j@bitron.ch>
171 * gobject/valacodegeneratorclass.vala: generate get_property and
172 set_property methods only when necessary, fixes bug 435848
174 2007-05-09 Jürg Billeter <j@bitron.ch>
176 * vala/parser.y: add basic checks for method modifiers, fixes bug 435853
177 * vala/vala.h: include valaflagsvalue.h
179 2007-05-09 Jürg Billeter <j@bitron.ch>
181 * vala/valanamespace.vala: iterate correctly over string in
182 camel_case_to_lower_case method, fixes bug 436760
184 2007-05-09 Jürg Billeter <j@bitron.ch>
186 * vala/valanamespace.vala: don't add default include directives for
187 VAPI files, fixes bug 436761
189 2007-05-07 Jürg Billeter <j@bitron.ch>
191 * vapi/glib-2.0.vala: correct strstr cname, patch by Zsombor
192 * vapi/gtk+-2.0.vala: add ellipsis to Gtk.ListStore.set() and
194 * vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala: update to GTK+ 2.10.12
196 2007-05-07 Jürg Billeter <j@bitron.ch>
198 * gobject/valacodegenerator.vala,
199 gobject/valacodegeneratormemberaccess.vala: ensure that local
200 variables don't use keywords in the C code
202 2007-05-07 Jürg Billeter <j@bitron.ch>
204 * vala/parser.y: declare variables at the beginning of blocks as
206 * gobject/valacodegeneratorclass.vala: avoid empty private struct
208 * vapi/glib-2.0.vala: use g_ascii_strtoll instead of strtoll
212 2007-05-03 Jürg Billeter <j@bitron.ch>
214 * gobject/valacodegenerator.vala,
215 gobject/valacodegeneratorassignment.vala,
216 gobject/valacodegeneratorclass.vala,
217 gobject/valacodegeneratorinterface.vala,
218 gobject/valacodegeneratorinvocationexpression.vala
219 gobject/valacodegeneratormemberaccess.vala,
220 gobject/valacodegeneratormethod.vala,
221 gobject/valacodegeneratorsignal.vala,
222 gobject/valacodegeneratorsourcefile.vala,
223 gobject/valacodegeneratorstruct.vala: split code generator
224 * gobject/Makefile.am, vapigen/Makefile.am: update
226 2007-05-03 Jürg Billeter <j@bitron.ch>
228 * gobject/valacodegenerator.vala: move code generator to new gobject
230 * configure.ac, Makefile.am, vala/Makefile.am, gobject/Makefile.am,
231 compiler/Makefile.am, vapi/Makefile.am: update
233 2007-05-03 Jürg Billeter <j@bitron.ch>
235 * vapi/glib-2.0.vala: GSList fixes and GIConv, patch by Michael Lawrence
237 2007-05-02 Jürg Billeter <j@bitron.ch>
239 * vapigen/gidlgen/gidlgen.in: use configured libdir, remove bashism,
240 based on patch by Mathias Hasselmann
241 * vapigen/gidlgen/Makefile.am: update
243 2007-05-02 Jürg Billeter <j@bitron.ch>
245 * gobject-introspection, vapigen, vapi/packages: move from vapigen
246 * configure.ac, Makefile.am: update
248 2007-04-30 Jürg Billeter <j@bitron.ch>
250 * configure.ac: Post-release version bump
252 2007-04-30 Jürg Billeter <j@bitron.ch>
254 * NEWS: update for 0.0.9 release
256 2007-04-30 Jürg Billeter <j@bitron.ch>
258 * vala/parser.y, vala/valasymbolbuilder.vala, vala/valaclass.vala,
259 vala/valanamespace.vala: add experimental support for class
260 declarations in multiple source files
262 2007-04-30 Jürg Billeter <j@bitron.ch>
264 * vala/valasemanticanalyzer.vala: check whether specified collection is
265 iterable in foreach statements, fixes bug 434514
267 2007-04-30 Jürg Billeter <j@bitron.ch>
269 * vala/valasemanticanalyzer.vala: allow any integer type as index in an
270 element access expression, fixes bug 434506
272 2007-04-30 Jürg Billeter <j@bitron.ch>
274 * vala/parser.y, vala/valasymbolbuilder.vala,
275 vala/valaattributeprocessor.vala, vala/valasemanticanalyzer.vala,
276 vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
277 vala/valaflags.vala: add basic support for flags, fixes bug 434511
279 2007-04-30 Jürg Billeter <j@bitron.ch>
281 * vala/valasemanticanalyzer.vala: check that void return values are not
282 used, fixes bug 434503
284 2007-04-30 Jürg Billeter <j@bitron.ch>
286 * vala/valasemanticanalyzer.vala: fix type check in relational
287 operations, fixes bug 434507
289 2007-04-30 Jürg Billeter <j@bitron.ch>
291 * vala/valacodegenerator.vala: add pointer to integer conversion in
292 foreach statements, fixes bug 433288
294 2007-04-24 Jürg Billeter <j@bitron.ch>
296 * vapi/glib-2.0.vala: add g_bit_nth_lsf, g_bit_nth_msf, and
299 2007-04-24 Jürg Billeter <j@bitron.ch>
301 * vala/valacallback.vala: add possibility to override default cname
302 * vala/valaattributeprocessor.vala: process callback attributes
303 * vala/valainterfacewriter.vala: cleanup code to write identifiers
305 2007-04-18 Jürg Billeter <j@bitron.ch>
307 * vala/valacodegenerator.vala: use const types where appropriate,
310 2007-04-18 Jürg Billeter <j@bitron.ch>
312 * vala/valacodegenerator.vala: simplify unref expression for non-null
314 * vala/valaclass.vala: don't mark fields as non-null due to
317 2007-04-12 Jürg Billeter <j@bitron.ch>
319 * vala/valatypereference.vala: add is_null property
320 * vala/valasemanticanalyzer.vala: fix type analysis in conditional and
321 parenthesized expressions, fixes bug 428368
322 * vapi/glib-2.0.vala: don't mark GLib.Object and GLib.InitiallyUnowned
325 2007-04-12 Jürg Billeter <j@bitron.ch>
327 * vala/valacodegenerator.vala: fix warning when using interface
330 2007-04-06 Jürg Billeter <j@bitron.ch>
332 * vala/scanner.l: use yyleng instead of strlen
333 * vala/valainterfacewriter.vala: don't write unnecessary attributes to
335 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
336 remove unnecessary attributes to reduce parse time
338 2007-04-05 Jürg Billeter <j@bitron.ch>
340 * vala/valacodegenerator.vala, vala/valaforstatement.vala: support
341 temporary variables in initializers and iterators of for statements
342 * vala/valacodegenerator.vala: support freeing generic types
343 * vala/parser.y, vala/valacodevisitor.vala,
344 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
345 vala/valareferencetransferexpression.vala: add reference transfer
346 expressions, e.g. `#var'
347 * vala/vala.h, vala/Makefile.am: update
349 2007-04-05 Jürg Billeter <j@bitron.ch>
351 * vala/valacodegenerator.vala: generate properties for destroy function
352 pointers in generic types
354 2007-04-05 Jürg Billeter <j@bitron.ch>
356 * vala/valacodegenerator.vala: pass destroy function pointer when
357 creating instances of generic types
358 * vala/valaclass.vala: add get_type_parameters method
360 2007-04-04 Jürg Billeter <j@bitron.ch>
362 * vala/scanner.l: improve cast support
363 * vala/valasemanticanalyzer.vala: fix ownership handling of local arrays
364 * vala/valacodegenerator.vala: skip code generation for static
365 interfaces, downgrade generic management support message to warning
366 * vala/valacallback.vala: support callbacks as property type
368 2007-04-04 Jürg Billeter <j@bitron.ch>
370 * vala/scanner.l: support casts to generic types
371 * vala/valasymbolresolver.vala, vala/valatypereference.vala: support
372 arrays of generic types
373 * vala/valasymbolresolver.vala: don't take ownership of elements of weak
375 * vala/valasemanticanalyzer.vala: accept uint as index value
376 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
377 vala/valastatement.vala: minor cleanup of creation methods
378 * vala/valacodegenerator.vala: support creation methods for structs, fix
379 pointer as return type
380 * vapi/glib-2.0.vala: add CLAMP and g_spaced_primes_closest
382 2007-04-03 Jürg Billeter <j@bitron.ch>
384 * vapi/math.vala: add mathematical functions, patch by
386 * vapi/Makefile.am: update
388 2007-04-03 Jürg Billeter <j@bitron.ch>
390 * vala/valacodegenerator.vala: initialize new array elements after
391 resizing an array, patch by Mathias Hasselmann
392 * vala/valaproperty.vala: fix for interface properties
394 2007-04-03 Jürg Billeter <j@bitron.ch>
396 * doc/valac.1, doc/Makefile.am: add manual page for valac written by
398 * Makefile.am, configure.ac: update
400 2007-04-03 Jürg Billeter <j@bitron.ch>
402 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
403 vala/valatypereference.vala: support declaration of local arrays
404 * tests/test-022.vala: test local array declaration
406 2007-04-03 Jürg Billeter <j@bitron.ch>
408 * vala/valasymbolbuilder.vala, vala/valacodegenerator.vala: some fixes
409 for abstract properties
410 * vala/valamethod.vala: improve default cname
412 2007-04-03 Jürg Billeter <j@bitron.ch>
414 * vapi/glib-2.0.vala: extend unicode support, add GRegex
416 2007-03-28 Raffaele Sandrini <rasa@gmx.ch>
418 * vapi/glib-2.0.vala: declare HashFunc and EqualFunc as callback
419 functions, patch by David Keijser
421 2007-03-25 Raffaele Sandrini <rasa@gmx.ch>
423 * vapi/vte.vala, vapi/vte.deps: add vte binding
424 * vapi/Makefile.am: update
426 2007-03-24 Raffaele Sandrini <rasa@gmx.ch>
428 * vala/valaforstatement.vala: assign parent_node to children of this
429 statement; include iterator and initializer in replacement of a child
430 node (fixes segfault using prefix increment expression in the
431 iterator of a for-statement)
433 2007-03-22 Raffaele Sandrini <rasa@gmx.ch>
435 * vala/valaflags.vala, vala/valaenum.vala, vala/valadatatype.vala,
436 vala/valastruct.vala: add support for default values of types
437 * vala/valacodegenerator.vala: use default values for initialization
438 * vapi/glib-2.0.vala: add default values for common types
440 2007-03-22 Jürg Billeter <j@bitron.ch>
442 * configure.ac: Post-release version bump
444 2007-03-22 Jürg Billeter <j@bitron.ch>
446 * NEWS: update for 0.0.8 release
447 * tests/Makefile.am: update
449 2007-03-22 Raffaele Sandrini <rasa@gmx.ch>
451 * vala/valacodegenerator.vala: fix generation of unresolvable 'memset'
452 for classes without strings.
454 2007-03-21 Raffaele Sandrini <rasa@gmx.ch>
456 * vapi/pango.vala: add Pango.Cairo and Pango.CairoFontMap
457 * vapi/pango.deps: add cairo dependency
458 * vapi/Makefile.am: update
460 2007-03-21 Jürg Billeter <j@bitron.ch>
462 * vala/valacodegenerator.vala: fix properties with interface types
463 * vala/valamemorymanager.vala: fix memory management when storing array
465 * vala/valaconstant.vala: obey overridden cprefix in namespaces
466 * vapi/config.vala: override lower_case_cprefix of namespace
468 2007-03-21 Raffaele Sandrini <rasa@gmx.ch>
470 * vala/valaconstant.vala: add '_' between namespace and name of
471 namespace constants' cname
473 2007-03-21 Jürg Billeter <j@bitron.ch>
475 * vala/valainterfacewriter.vala: minor output enhancements
476 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
477 improve handling of value-types and arrays
479 2007-03-21 Jürg Billeter <j@bitron.ch>
481 * vala/parser.y, vala/valainterface.vala: support static interfaces
482 * vala/valastruct.vala: make set_type_id public
483 * vapi/glib-2.0.vala: add GBoxed as interface
485 2007-03-21 Jürg Billeter <j@bitron.ch>
487 * vala/valastruct.vala: use pointer as default of type_id and
488 marshaller_type_name for reference types
489 * vala/valapointer.vala: implement get_type_id
491 2007-03-21 Jürg Billeter <j@bitron.ch>
493 * vala/valacodegenerator.vala: deep copy GLists if necessary, patch by
495 * vapi/glib-2.0.vala: fix some printf format strings to work on ILP32
498 2007-03-21 Jürg Billeter <j@bitron.ch>
500 * vapi/glib-2.0.vala: improve support for numeric types, patch by
502 * tests/test-030.vala, tests/test-030.out, tests/test-031.vala,
503 tests/test-031.out: test numeric types
504 * tests/testrunner.sh: use c99 and math library
505 * tests/Makefile.am: update
507 2007-03-21 Jürg Billeter <j@bitron.ch>
509 * vala/valainterface.vala: implement marshalling support
510 * vala/valacodegenerator.vala: support signals with interface parameters
512 2007-03-20 Raffaele Sandrini <rasa@gmx.ch>
514 * vapi/glib-2.0.vala: add extended runtime type support
515 * vala/parser.y: also read property modifiers in set-only properties
517 2007-03-20 Jürg Billeter <j@bitron.ch>
519 * vala/valasymbolresolver.vala: add GObject to the list of base types
520 * vapi/glib-2.0.vala: add ref and unref methods to GObject
522 2007-03-20 Jürg Billeter <j@bitron.ch>
524 * vala/valaparser.vala, vala/valasemanticanalyzer.vala,
525 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
526 vala/valacallback.vala, vala/valainvocationexpression.vala,
527 vala/valamethod.vala, vala/valaobjectcreationexpression.vala: use weak
528 local variables where appropriate
529 * vala/parser.y, vala/valasemanticanalyzer.vala: default local variables
531 * vala/valasemanticanalyzer.vala: don't promote local variables from
532 weak to strong reference
533 * vala/valacodegenerator.vala: warn when duplicating non-reference
534 counted structs implicitly
536 2007-03-20 Jürg Billeter <j@bitron.ch>
538 * tests/testrunner.sh: run with /bin/bash due to bashism, patch by
541 2007-03-20 Jürg Billeter <j@bitron.ch>
543 * vapi/glib-2.0.vala: wrap functions for escaping markup strings, patch
544 by Mathias Hasselmann
546 2007-03-20 Jürg Billeter <j@bitron.ch>
548 * vala/valacodegenerator.vala: free lists of interfaces correctly, patch
549 by Mathias Hasselmann
551 2007-03-17 Jürg Billeter <j@bitron.ch>
553 * compiler/valacompiler.vala, compiler/Makefile.am, vapi/config.vala:
554 consider install prefix when searching for packages, patch by
556 * configure.ac: add AM_PROG_CC_C_O
557 * autogen.sh, MAINTAINERS: added
558 * Makefile.am: dist MAINTAINERS
560 2007-03-17 Jürg Billeter <j@bitron.ch>
562 * vala/valasemanticanalyzer.vala, vala/valacodegnerator.vala,
563 vala/valaclassregisterfunction.vala,
564 vala/valainterfaceregisterfunction.vala,
565 vala/valatyperegisterfunction.vala, vala/valacodecontext.vala: support
566 creating GTypeModule-based plug-ins with the ModuleInit attribute
567 * vala/parser.y, vala/valacodegenerator.vala, vala/valaclass.vala:
568 support static classes
569 * vapi/glib-2.0.vala: add TypePlugin and TypeModule
571 2007-03-17 Jürg Billeter <j@bitron.ch>
573 * vala/parser.y: accept attributes without parentheses
574 * vala/valainterfacewriter.vala: don't write weak keyword for value
576 * vapi/atk.vala, vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala,
577 vapi/libxml-2.0.vala, vapi/pango.vala: update
579 2007-03-17 Jürg Billeter <j@bitron.ch>
581 * ccode/valaccodeunaryexpression.vala: support pointer indirections
582 * vala/parser.y, vala/valacodevisitor.vala,
583 vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
584 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
585 vala/valaaddressofexpression.vala, vala/valadatatype.vala,
586 vala/valapointer.vala, vala/valapointerindirection.vala,
587 vala/valatypereference.vala: support pointer-types, pointer
588 indirections, and address-of expressions
589 * vala/vala.h, vala/Makefile.am: update
591 2007-03-16 Jürg Billeter <j@bitron.ch>
593 * vala/parser.y: support weak keyword in local variable declarations
594 * vapi/glib-2.0.vala: improve GError support
596 2007-03-16 Jürg Billeter <j@bitron.ch>
598 * vala/valacodegenerator.vala: support disconnecting signals, based on
599 patch by Alexandre Moreira
600 * tests/test-018.vala, tests/test-018.out: test disconnecting signals
602 2007-03-16 Jürg Billeter <j@bitron.ch>
604 * vala/valacodegenerator.vala: fix null pointer dereference when
607 2007-03-16 Jürg Billeter <j@bitron.ch>
609 * vala/parser.y: default to strong references for method return types
610 * vala/valasymbolresolver.vala: reset TypeReference.transfers_ownership
612 * vala/valasourcefile.vala: assume ownership of include filenames
613 * vala/valainterfacewriter.vala: use weak keyword for return types
614 * vala/valacodecontext.vala, vala/valasourcefile.vala,
615 vala/valasymbolbuilder.vala, vapi/glib-2.0.vala: add weak to return
618 2007-03-11 Jürg Billeter <j@bitron.ch>
620 * vala/valasemanticanalyzer.vala: resolve generic return values
621 * vala/valamemorymanager.vala: fix check for generic method parameters
622 to support derived types
623 * vala/valainterface.vala: implement get_type_parameter_index
624 * vala/valamemberaccess.vala: visit type arguments
625 * vala/valaclassregisterfunction.vala,
626 vala/valainterfaceregisterfunction.vala,
627 vala/valatyperegisterfunction.vala: pass base_init function pointer
629 * vala/valacodegenerator.vala: fix initialization check in interface
631 * vala/valasemanticanalyzer.vala: fix prerequisite check to also accept
632 derived types of prerequisites
634 2007-03-10 Jürg Billeter <j@bitron.ch>
636 * ccode/valaccodecastexpression.vala: correct bracketing in cast
639 2007-03-10 Jürg Billeter <j@bitron.ch>
641 * vala/valacodegenerator.vala: support interface properties and signals,
642 improve support for generics
644 2007-03-10 Jürg Billeter <j@bitron.ch>
646 * vala/parser.y, vala/valasymbolbuilder.vala,
647 vala/valasemanticanalyzer.vala, vala/valaproperty.vala: support
648 abstract, virtual, and override modifiers for properties
649 * vala/parser.y: support get and set as identifiers
651 2007-03-10 Jürg Billeter <j@bitron.ch>
653 * vala/valatypereference.vala: correct cname of generic type parameters
655 2007-03-10 Jürg Billeter <j@bitron.ch>
657 * vala/valacreationmethod.vala, vala/valamethod.vala: fix overriding
658 cname of creation methods
660 2007-03-07 Jürg Billeter <j@bitron.ch>
662 * vala/valasemanticanalyzer.vala: check whether a class implements all
663 abstract methods of base classes
664 * vala/valacodenode.vala, vala/valadatatype.vala,
665 vala/valaexpression.vala, vala/valaliteral.vala: fix build with added
668 2007-03-07 Jürg Billeter <j@bitron.ch>
670 * vala/valaclass.vala: implement get_type_parameter_index
672 2007-03-07 Raffaele Sandrini <rasa@gmx.ch>
674 * vala/valasemanticanalyzer.vala: check whether a class implements all
675 methods required by its super interfaces
677 2007-03-05 Jürg Billeter <j@bitron.ch>
679 * vala/scanner.l, vala/parser.y, vala/valacatchclause.vala,
680 vala/valathrowstatement.vala, vala/valatrystatement.vala,
681 vala/valacodevisitor.vala: add exception handling support to the
683 * vala/vala.h, vala/Makefile.am: update
685 2007-03-05 Raffaele Sandrini <rasa@gmx.ch>
687 * vala/valainterfaceregisterfunction.vala: add
688 `g_type_interface_add_prerequisite' calls during interface type
690 * vala/valasemanticanalyzer.vala: add checks for consistent interface
691 prerequisites and whether classes are obeying them
693 2007-03-04 Jürg Billeter <j@bitron.ch>
695 * configure.ac: Post-release version bump
697 2007-03-04 Jürg Billeter <j@bitron.ch>
699 * NEWS: update for 0.0.7 release
701 2007-03-04 Jürg Billeter <j@bitron.ch>
703 * vala/parser.y: pack all embedded stataments in blocks
704 * vala/vala.h: update
706 2007-03-04 Jürg Billeter <j@bitron.ch>
708 * vala/valasemanticanalyzer.vala: check for inherited properties in
709 construct formal parameters
711 2007-03-04 Jürg Billeter <j@bitron.ch>
713 * vala/valasemanticanalyzer.vala: don't allow interface implementations
715 * vala/valaconstant.vala, vala/valafield.vala,
716 vala/valaformalparameter.vala, vala/valamethod.vala,
717 vala/valaproperty.vala, vala/valasignal.vala,
718 vala/valavariabledeclarator.vala: remove override from interface
721 2007-03-04 Jürg Billeter <j@bitron.ch>
723 * vala/parser.y, vala/valainterface.vala,
724 vala/valasemanticanalyzer.vala: rename base_types of interfaces to
725 prerequisites to follow GObject terminology
726 * vala/valamethod.vala, vala/valasemanticanalyzer.vala,
727 vala/valacodegenerator.vala: move interface usage part from
728 base_method to base_interface_method property
729 * vala/valasemanticanalyzer.vala: don't require interface
730 implementations to specify override
731 * vala/valacodegenerator.vala: support base access in interface
733 * tests/test-017.vala: remove override in method declaration
735 2007-03-04 Jürg Billeter <j@bitron.ch>
737 * vala/valasemanticanalyzer.vala: support lambda expressions in
739 * tests/test-029.vala: remove extra printf argument
741 2007-03-04 Raffaele Sandrini <rasa@gmx.ch>
743 * vala/valasemanticanalyzer.vala, vala/parser.y,
744 vala/valaformalparameter.vala: add support for construct formal
745 creation method parameters
746 * tests/test-029.vala, tests/test-029.out: add testcase for construct
748 * tests/Makefile.am: update
750 2007-03-04 Raffaele Sandrini <rasa@gmx.ch>
752 * vala/valaattributeprocessor.vala, vala/valacharacterliteral.vala,
753 vala/valamethod.vala, vala/valasymbolbuilder.vala,
754 vala/valacodevisitor.vala, vala/valainterfacewriter.vala,
755 vala/valamemorymanager.vala: update/fix copyright notice
757 2007-03-03 Raffaele Sandrini <rasa@gmx.ch>
759 * vala/valaattributeprocessor.vala, vala/valamethod.vala,
760 vala/valacodegenerator.vala, vala/valacreationmethod.vala,
761 vala/valasymbolbuilder.vala, vala/valasemanticanalyzer.vala,
762 vala/parser.y, vala/valacodevisitor.vala,
763 vala/valainterfacewriter.vala, vala/valamemorymanager.vala:
764 add CreationMethod type; restrict creation methods bodys to contain
765 only property assignment statements
766 * vala/valacharacterliteral.vala, vala/valacodegenerator.vala,
767 vala/valaarray.vala: fix the compiler to obey the new creation
769 * vala/Makefile.am: update
771 2007-03-03 Jürg Billeter <j@bitron.ch>
773 * vapi/atk.vala, vapi/cairo.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala,
774 vapi/pango.vala: switch to new construction syntax
776 2007-03-03 Jürg Billeter <j@bitron.ch>
778 * vala/parser.y: remove support of old construction syntax
780 2007-03-03 Jürg Billeter <j@bitron.ch>
782 * Switch to new construction syntax
784 2007-03-03 Jürg Billeter <j@bitron.ch>
786 * vala/parser.y: support new construction syntax
787 * vala/valainterfacewriter.vala: write interface with new construction
790 2007-03-01 Jürg Billeter <j@bitron.ch>
792 * vala/valatypereference.vala: improve equality check
793 * vala/valatypeparameter.vala: add type parameter equality check
794 * vala/valasemanticanalyzer.vala: add symbol dependencies for
795 interfaces, support overriding methods of interfaces with
798 2007-02-28 Jürg Billeter <j@bitron.ch>
800 * configure.ac: Post-release version bump
802 2007-02-28 Jürg Billeter <j@bitron.ch>
804 * NEWS: update for 0.0.6 release
805 * tests/Makefile.am: correctly distribute test sources
807 2007-02-28 Jürg Billeter <j@bitron.ch>
809 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
812 2007-02-28 Jürg Billeter <j@bitron.ch>
814 * tests/test-022.vala, tests/test-022.out: test Array.resize method and
816 * vala/valacodegenerator.vala: update length when resizing arrays
818 2007-02-27 Jürg Billeter <j@bitron.ch>
820 * vala/valacodenode.vala: mark source_reference as construction property
821 to allow access in Array constructor
822 * vala/valaarraylengthfield.vala: the Array.length field
823 * vala/valaarrayresizemethod.vala: the Array.resize method
824 * vala/valaarray.vala: support arrays of generic type parameters, add
825 length field, add resize method
826 * vala/valatypereference.vala: make source reference optional
827 * vala/valatypeparameter.vala, vala/valasymbolresolver.vala,
828 vala/valasemanticanalyzer.vala: support arrays of generic type
830 * vala/valadatatype.vala, vala/valacodegenerator.vala: support
831 Array.length field and Array.resize method
832 * vala/Makefile.am: update
834 2007-02-27 Jürg Billeter <j@bitron.ch>
836 * vala/parser.y: accept interfaces with base types
838 2007-02-26 Jürg Billeter <j@bitron.ch>
840 * vala/valasymbolresolver.vala: fix error handling with unknown
843 2007-02-26 Jürg Billeter <j@bitron.ch>
845 * tests/test-028.vala, tests/test-028.out: test enums
846 * tests/Makefile.am: update
848 2007-02-26 Jürg Billeter <j@bitron.ch>
850 * tests/test-027.vala, tests/test-027.out: test postfix and prefix
852 * tests/Makefile.am: update
853 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
854 prefix and postfix expressions for properties and parenthesized
857 2007-02-25 Jürg Billeter <j@bitron.ch>
859 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: improve
860 subtyping suport for structs
862 2007-02-25 Jürg Billeter <j@bitron.ch>
864 * tests/test-026.vala, tests/test-026.out: test hidden base method
866 * tests/Makefile.am: update
867 * vala/valasemanticanalyzer.vala: correct symbol_reference for base
868 access, add current_struct field
870 2007-02-25 Jürg Billeter <j@bitron.ch>
872 * tests/test-010.vala, tests/test-010.out: enhance assignment test
873 * vala/valasemanticanalyzer.vala: correct bracketing in compound
876 2007-02-25 Jürg Billeter <j@bitron.ch>
878 * vala/valacodenode.vala: add to_string method
880 2007-02-25 Jürg Billeter <j@bitron.ch>
882 * vapi/glib-2.0.vala: improve GSource support
884 2007-02-22 Raffaele Sandrini <rasa@gmx.ch>
886 * vala/valacodegenerator.vala: don't allow NULL terminated arrays of
887 value-type structs and remove the check on such arrays in a freach
890 2007-02-21 Jürg Billeter <j@bitron.ch>
892 * vala/valacallback.vala: support using instance methods as static
895 2007-02-19 Jürg Billeter <j@bitron.ch>
897 * vapi/glib-2.0.vala: more string functions (patch by Cayle Graumann)
899 2007-02-18 Raffaele Sandrini <rasa@gmx.ch>
901 * vala/valainterfacewriter.vala: fix indentation for class definitions
903 2007-02-04 Jürg Billeter <j@bitron.ch>
905 * vapi/glib-2.0.vala: add GLib.Queue
907 2007-02-04 Jürg Billeter <j@bitron.ch>
909 * vala/valaconstant.vala: fix global constants
910 * vapi/glib-2.0.vala: add NoArrayLength attribute to Process functions
912 2007-02-04 Jürg Billeter <j@bitron.ch>
914 * vala/valacodegenerator.vala: use correct type cname in array creation
915 expression, don't assume that all string arrays own their content
917 2007-02-04 Jürg Billeter <j@bitron.ch>
919 * vala/parser.y: fix crash when parsing array creation expression
921 2006-12-23 Jürg Billeter <j@bitron.ch>
923 * vala/valaattribute.vala: add get_bool method for boolean values
924 * compiler/valacompiler.vala: print message when detecting option errors
926 2006-12-10 Jürg Billeter <j@bitron.ch>
928 * vapi/glib-2.0.vala: add message logging functions
929 * vala/valasemanticanalyzer.vala: support enum to int conversions and
931 * vala/valacodegenerator.vala: support do statements
933 2006-11-24 Jürg Billeter <j@bitron.ch>
935 * vala/valacodegenerator.vala: fix generating switch statements
937 2006-11-23 Jürg Billeter <j@bitron.ch>
939 * vala/valacodegenerator.vala: allow main methods without parameters and
940 main methods returning void, check complete signature of main method
942 2006-11-22 Jürg Billeter <j@bitron.ch>
944 * vala/parser.y, vala/valacodegenerator.vala: support enum members with
947 2006-11-22 Jürg Billeter <j@bitron.ch>
949 * vapi/glib-2.0.vala: add direct_hash and direct_equal
950 * tests/Makefile.am: distribute reference output
952 2006-11-21 Jürg Billeter <j@bitron.ch>
954 * vala/valaclass.vala, vala/valaenum.vala, vala/valafield.vala,
955 vala/valainterface.vala, vala/valanamespace.vala,
956 vala/valastruct.vala: use new attribute functionality
958 2006-11-21 Jürg Billeter <j@bitron.ch>
960 * vala/valaattribute.vala: add has_argument, get_string, and get_integer
962 * vala/valacodenode.vala: add get_attribute method
963 * vala/valamethod.vala: use new attribute functionality
965 2006-11-21 Jürg Billeter <j@bitron.ch>
967 * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: don't
968 require GLib namespace at runtime in symbol resolver and semantic
971 2006-11-21 Jürg Billeter <j@bitron.ch>
973 * tests/testrunner.sh: add test script
974 * tests/*.out: add reference output for test cases
975 * tests/Makefile.am: add test environment
977 2006-11-20 Jürg Billeter <j@bitron.ch>
979 * vala/valacodegenerator.vala: fix code generation for structs
981 2006-11-11 Jürg Billeter <j@bitron.ch>
983 * configure.ac: remove AM_MAINTAINER_MODE to always rebuild scanner and
986 2006-11-09 Raffaele Sandrini <rasa@gmx.ch>
988 * vapi/glib-2.0.vala: add GArray and GTree structures
989 * vala/valainterfacewriter.vala: write header files attributes for
992 2006-11-09 Jürg Billeter <j@bitron.ch>
994 * vapi/libxml-2.0.vala: some fixes and additions
996 2006-11-08 Jürg Billeter <j@bitron.ch>
998 * vala/valacodegenerator.vala: support interfaces in header cycles
999 * vala/valanamespace.vala: add get_interfaces method
1001 2006-11-06 Jürg Billeter <j@bitron.ch>
1003 * vala/parser.y: support unary ~ operator
1005 2006-11-06 Jürg Billeter <j@bitron.ch>
1007 * vala/valacodegenerator.vala: use g_value_set_object for interfaces
1008 * vala/valainterface.vala: implement get_type_id
1010 2006-11-02 Jürg Billeter <j@bitron.ch>
1012 * configure.ac: Post-release version bump
1014 2006-11-02 Jürg Billeter <j@bitron.ch>
1016 * NEWS: update for 0.0.5 release
1018 2006-11-02 Jürg Billeter <j@bitron.ch>
1020 * vala/valainterfacewriter.vala: write CCode.cname attribute for methods
1021 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1022 use CCode.cname attribute
1024 2006-11-02 Raffaele Sandrini <rasa@gmx.ch>
1026 * vala/valacodegenerator.vala: fix memory leak caused when container
1027 expression transfers ownership to the foreach statement
1029 2006-11-02 Jürg Billeter <j@bitron.ch>
1031 * vala/valainterfacewriter.vala: don't use weak for value types
1032 * vala/valamethod.vala: make set_cname public
1033 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1034 add Gtk.Allocation, don't use weak for value types
1036 2006-10-31 Jürg Billeter <j@bitron.ch>
1038 * vala/valacodegenerator.vala: don't add NULL to end of variable
1039 argument list for printf-style functions to reduce the number of
1040 warnings during C compilation
1041 * vala/valamethod.vala: support PrintfFormat attribute
1042 * vala/vala.h: include valareport.h
1043 * vapi/glib-2.0.vala: use PrintfFormat attribute
1045 2006-10-27 Jürg Billeter <j@bitron.ch>
1047 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1050 2006-10-26 Raffaele Sandrini <rasa@gmx.ch>
1052 * vala/valasemanticanalyzer.vala: make foreach iterator only visible to
1056 2006-10-26 Jürg Billeter <j@bitron.ch>
1058 * vala/valacodegenerator.vala: don't create empty dispose functions,
1059 support virtual methods with non-void return type
1060 * vapi/glib-2.0.vala: include glib/gstdio.h for GLib file functions
1062 2006-10-26 Jürg Billeter <j@bitron.ch>
1064 * vala/valacodegenerator.vala: explicitly cast callbacks to reduce the
1065 number of warnings during C compilation
1067 2006-10-26 Jürg Billeter <j@bitron.ch>
1069 * vala/valacodegenerator.vala: convert integer to pointer for generic
1070 parameters to reduce the number of warnings during C compilation
1072 2006-10-26 Jürg Billeter <j@bitron.ch>
1074 * vala/valacodegenerator.vala: cast object instances in return
1075 statements to reduce the number of warnings during C compilation
1077 2006-10-25 Jürg Billeter <j@bitron.ch>
1079 * vala/valacodegenerator.vala: cast object instances in comparisons to
1080 reduce the number of warnings during C compilation
1082 2006-10-25 Jürg Billeter <j@bitron.ch>
1084 * vala/valacodegenerator.vala, vala/valaarray.vala,
1085 vala/valacallback.vala, vala/valaclass.vala, vala/valadatatype.vala,
1086 vala/valaenum.vala, vala/valaflags.vala, vala/valainterface.vala,
1087 vala/valastruct.vala, vala/valatypereference.vala, vapi/glib-2.0.vala:
1088 start to use const specifier for strings to reduce number of warnings
1089 during C compilation
1091 2006-10-25 Jürg Billeter <j@bitron.ch>
1093 * vala/parser.y, vala/valacodevisitor.vala,
1094 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
1095 vala/valabaseaccess.vala: support base access
1096 * vala/vala.h, vala/Makefile.am: update
1097 * tests/test-025.vala: test base access
1098 * tests/Makefile.am: update
1100 2006-10-25 Jürg Billeter <j@bitron.ch>
1102 * configure.ac: Post-release version bump
1103 * compiler/valacompiler.vala: --version support
1104 * compiler/Makefile.am: always include config.h to keep compatibility
1105 * vapi/config.vala: add binding for config.h
1106 * vapi/Makefile.am: update
1108 2006-10-25 Jürg Billeter <j@bitron.ch>
1110 * vala/valasourcefile.vala: support dependencies on constants
1112 2006-10-24 Jürg Billeter <j@bitron.ch>
1114 * vala/valasemanticanalyzer.vala: don't crash when comparing value type
1117 2006-10-24 Jürg Billeter <j@bitron.ch>
1119 * vala/valasymbolresolver.vala: don't crash on already resolved type
1121 * vala/valasemanticanalyzer.vala: support typeof expression
1122 * vala/valacodegenerator.vala: improve support for null-terminated
1124 * vala/valainterfacewriter.vala: don't write type arguments for arrays
1126 2006-10-08 Jürg Billeter <j@bitron.ch>
1128 * vala/parser.y: support enum values
1130 2006-10-06 Jürg Billeter <j@bitron.ch>
1132 * NEWS: update for 0.0.4 release
1134 2006-10-06 Raffaele Sandrini <rasa@gmx.ch>
1136 * vapi/glib-2.0.vala, vala/valaflags.vala, vala/valaenum.vala,
1137 vala/valadatatype.vala, vala/valaarray.vala, vala/valaclass.vala,
1138 vala/valastruct.vala: add get and set value support
1139 * vala/valacodegenerator.vala: add user (arbitrary) signal support
1140 * vala/valadatatype.vala, vala/valamemorymanager.vala,
1141 vala/valastruct.vala: correctly honor ref types in type arguments
1142 * ccode/valaccodedeclaration.vala, ccode/valaccodemodifiers.vala:
1143 support register local variables
1144 * ccode/valaccodememberaccess.vala: make one line creation possible
1145 * vapi/glib-2.0.vala: fix return type of Glib.List.nth_data
1146 * tests/test-024.vala: add user signal test
1147 * tests/Makefile.am: update
1149 2006-10-05 Jürg Billeter <j@bitron.ch>
1151 * vala/parser.y, vala/valasemanticanalyzer.vala: complete support for
1152 prefix increment and decrement operator
1154 2006-10-05 Jürg Billeter <j@bitron.ch>
1156 * vala/valasemanticanalyzer.vala: transform compund assignments into
1158 * vala/valabinaryexpression.vala: add default argument to construction
1160 * tests/test-021.vala: test string += assignment
1162 2006-10-04 Jürg Billeter <j@bitron.ch>
1164 * vala/valasymbolresolver.vala: correct takes_ownership in arrays
1165 * vala/valacodegenerator.vala: add limited support for array length
1166 fields, store array length from array creation expression, copy array
1167 length in array assignments
1168 * vala/valafield.vala: support NoArrayLength attribute
1169 * compiler/valacompiler.vala: add NoArrayLength attribute to option
1172 2006-10-04 Jürg Billeter <j@bitron.ch>
1174 * vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala: specify
1175 array element type as type argument
1176 * vala/valacodegenerator.vala: create declarations for array length
1177 variables, iterate over arrays by index if it has known length
1178 * vala/valacharacterliteral.vala: correct return type of get_char
1179 * vala/valanamespace.vala: process enums and flags first
1180 * vala/valavariabledeclarator.vala: set parent_node of initializer, add
1182 * tests/test-023.vala: test list construction
1183 * tests/Makefile.am: update
1185 2006-10-03 Jürg Billeter <j@bitron.ch>
1187 * vala/valacodegenerator.vala: don't use InstanceCast for callbacks
1189 2006-09-28 Raffaele Sandrini <rasa@gmx.ch>
1191 * vala/valacodegenerator.vala, vala/valasemanticanalyzer.vala,
1192 vala/valamemorymanager.vala: add one dimensional array assignment
1194 * tests/test-022.vala: testcase for array creation/assignment
1195 * tests/Makefile.am: update
1197 2006-09-28 Jürg Billeter <j@bitron.ch>
1199 * vapi/glib-2.0.vala: add and improve various types
1201 2006-09-28 Jürg Billeter <j@bitron.ch>
1203 * vala/parser.y: set attributes also for non-readable properties
1204 * vala/valacodegenerator.vala: support interface signals
1205 * vala/valainvocationexpression.vala,
1206 vala/valaobjectcreationexpression.vala: fix problem when children
1207 change while iterating over them
1209 2006-09-27 Jürg Billeter <j@bitron.ch>
1211 * vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1212 vala/valamethod.vala: support InstanceByReference attribute
1213 * vapi/glib-2.0.vala: add Filename struct, fix Process methods
1214 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1215 fix static methods without parameters, add InstanceByReference
1218 2006-09-27 Jürg Billeter <j@bitron.ch>
1220 * vala/valainterface.vala: visit interface signals
1221 * vala/valainterfacewriter.vala: obey lock keyword
1222 * vapi/atk.vala, vapi/gtk+-2.0.vala: add interface signals
1224 2006-09-27 Raffaele Sandrini <rasa@gmx.ch>
1226 * vapi/glib-2.0.vala: add threading and assorted structures
1227 * vala/valamember.vala: add an additional abstraction for all members
1229 * vala/valalockstatement.vala, vala/valacodegenerator.vala,
1230 vala/scanner.l, vala/valasemanticanalyzer.vala,
1231 vala/valalockable.vala, vala/parser.y, vala/valacodevisitor.vala:
1232 add lock feature to vala
1233 * vala/valamethod.vala, vala/valafield.vala, vala/valaconstant.vala,
1234 vala/valasignal.vala, vala/valaproperty.vala: make those members
1236 * vala/valacodegenerator.vala: use member abstraction to simlify field
1237 initialisation and destruction
1238 * vala/valacodegenerator.vala: introduce new C macros VALA_FREE_CHECKED
1239 and VALA_FREE_UNCHECKED to make safe freeing code nicer
1240 * vala/vala.h: update and bring arraycreationexpression in order
1241 * vala/Makefile.am: update
1243 2006-09-27 Jürg Billeter <j@bitron.ch>
1245 * vapi/glib-2.0.vala: add Process struct with spawn functions
1247 2006-09-27 Jürg Billeter <j@bitron.ch>
1249 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1252 2006-09-26 Jürg Billeter <j@bitron.ch>
1254 * vapi/glib-2.0.vala: add string.reverse, Source.remove,
1255 Environment.get_variable, Environment.set_variable,
1256 Environment.get_current_dir, Path.is_absolute, Path.skip_root
1258 2006-09-26 Jürg Billeter <j@bitron.ch>
1260 * vala/valaassignment.vala, vala/valabinaryexpression.vala,
1261 vala/valacastexpression.vala, vala/valadostatement.vala,
1262 vala/valaexpressionstatement.vala, vala/valaforeachstatement.vala,
1263 vala/valaforstatement.vala, vala/valaifstatement.vala,
1264 vala/valainvocationexpression.vala, vala/valamemberaccess.vala,
1265 vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
1266 vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
1267 vala/valawhilestatement.vala: add missing cast
1269 2006-09-03 Jürg Billeter <j@bitron.ch>
1271 * vala/scanner.l: make character_literal stricter
1272 * vala/valacodegenerator.vala: support more method return types,
1273 support unicode character literals
1274 * vala/valacharacterliteral.vala: validate input, add get_char method
1276 2006-09-02 Jürg Billeter <j@bitron.ch>
1278 * vala/parser.y, vala/valacodecontext.vala,
1279 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1280 vala/valacodegenerator.vala, vala/valaarraycreationexpression.vala,
1281 vala/valablock.vala, vala/valacallback.vala, vala/valaclass.vala,
1282 vala/valaelementaccess.vala, vala/valafield.vala,
1283 vala/valaformalparameter.vala, vala/valaforstatement.vala,
1284 vala/valainitializerlist.vala, vala/valainterface.vala,
1285 vala/valainvocationexpression.vala, vala/valainvokable.vala,
1286 vala/valalambdaexpression.vala,
1287 vala/valalocalvariabledeclaration.vala, vala/valamemberaccess.vala,
1288 vala/valamethod.vala, vala/valanamespace.vala,
1289 vala/valaobjectcreationexpression.vala, vala/valasignal.vala,
1290 vala/valasourcefile.vala, vala/valastruct.vala,
1291 vala/valaswitchsection.vala, vala/valaswitchstatement.vala,
1292 vala/valatypereference.vala, vala/valavariabledeclarator.vala,
1293 ccode/valaccodefragment.vala, vapi/glib-2.0.vala: always default type
1295 * vala/valacodevisitor.vala, vala/valacodegenerator.vala,
1296 vala/valaexpression.vala, vala/valareturnstatement.vala: avoid
1297 unnecessary ref/unref pair in return expression
1298 * vala/valatypereference.vala: copy type arguments in copy method, too
1299 * vala/valasemanticanalyzer.vala: set type arguments in type_reference
1300 of ObjectCreationExpression
1301 * vala/valadatatype.vala: fix warning
1303 2006-09-02 Jürg Billeter <j@bitron.ch>
1305 * vala/valacodegenerator.vala: special case construction of GLib.List
1306 and GLib.SList (reported by Cayle Graumann)
1308 2006-09-02 Jürg Billeter <j@bitron.ch>
1310 * vala/scanner.l, vala/parser.y, vala/valasemanticanalyzer.vala,
1311 vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1312 vala/valamemberaccessibility.vala: prepare to support protected
1315 2006-09-02 Jürg Billeter <j@bitron.ch>
1317 * vala/parser.y: don't set parent_node in parser
1318 * vala/valasemanticanalyzer.vala: support string + operator
1319 * vala/valaassignment.vala, vala/valabinaryexpression.vala,
1320 vala/valacastexpression.vala, vala/valacodenode.vala,
1321 vala/valadostatement.vala, vala/valaexpressionstatement.vala,
1322 vala/valaforeachstatement.vala, vala/valaforstatement.vala,
1323 vala/valaifstatement.vala, vala/valainvocationexpression.vala,
1324 vala/valamemberaccess.vala, vala/valaobjectcreationexpression.vala,
1325 vala/valaparenthesizedexpression.vala, vala/valareturnstatement.vala,
1326 vala/valaswitchstatement.vala, vala/valaunaryexpression.vala,
1327 vala/valawhilestatement.vala: set parent_node of child nodes, add
1329 * vala/valanullliteral.vala: add default argument to construction method
1330 * tests/test-021.vala: test string + operator
1331 * tests/Makefile.am: update
1333 2006-09-02 Jürg Billeter <j@bitron.ch>
1335 * vala/scanner.l: support integer and floating point suffixes
1336 * vala/valasemanticanalyzer.vala: use correct type for integer and
1337 floating point literals
1338 * vala/valaintegerliteral.val, vala/valarealliteral.vala: add
1339 get_type_name method
1340 * vapi/glib-2.0.vala: add string to int64 conversion method
1342 2006-09-02 Jürg Billeter <j@bitron.ch>
1344 * vala/valasemanticanalyzer.vala: use IntegerType, FloatingType, and
1345 rank attributes to analyze arithmetic operations
1346 * vala/valacodegenerator.vala: generate C casts for explicit value-type
1348 * vala/valastruct.vala: add is_integer_type, is_floating_type, and
1349 get_rank methods, add IntegerType and FloatingType attributes
1350 * vala/valasemanticanalyzer.vala, vala/valacastexpression.vala,
1351 vala/valainstancecast.vala, ccode/valaccodecastexpression.vala: fix
1353 * vapi/glib-2.0.vala: add int16, uint16, int32, uint32, use IntegerType
1354 and FloatingType attributes
1356 2006-09-02 Jürg Billeter <j@bitron.ch>
1358 * vala/parser.y: set accessibility for constants
1359 * vala/valasemanticanalyzer.vala: set return type in property set
1361 * vala/valacodegenerator.vala: move public constants to header file
1362 * vala/valaclass.vala: don't create fields for properties in VAPI files
1363 * vala/valaconstant.vala: add access member
1365 2006-09-02 Jürg Billeter <j@bitron.ch>
1367 * vapi/cairo.vala: mark Matrix as reference type
1369 2006-08-24 Jürg Billeter <j@bitron.ch>
1371 * vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala, vapi/pango.vala:
1372 mark virtual methods appropriately
1374 2006-08-24 Jürg Billeter <j@bitron.ch>
1376 * vala/valaattributeprocessor.vala, vala/valacodegenerator.vala,
1377 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala: add
1378 possibility to change interface type struct cname, default to `Iface'
1379 suffix (reported by Dominique Würtz)
1381 2006-08-23 Jürg Billeter <j@bitron.ch>
1383 * vala/valasemanticanalyzer.vala: support calling non-abstract interface
1385 * vala/valainterface.vala: add get_base_types method
1387 2006-08-20 Jürg Billeter <j@bitron.ch>
1389 * configure.ac: Post-release version bump, fail if flex or bison not
1392 2006-08-18 Jürg Billeter <j@bitron.ch>
1394 * NEWS: update for 0.0.3 release
1396 2006-08-18 Jürg Billeter <j@bitron.ch>
1398 * compiler/valacompiler.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala:
1399 use array length functionality
1401 2006-08-18 Jürg Billeter <j@bitron.ch>
1403 * vala/valacodegenerator.vala: support implicit array length parameter
1404 * vala/valainterfacewriter.vala, vala/valaformalparameter.vala,
1405 vala/valamethod.vala: support NoArrayLength attribute
1406 * compiler/valacompiler.vala, vapi/atk.vala, vapi/cairo.vala,
1407 vapi/gdk-2.0.vala, vapi/glib-2.0.vala, vapi/gtk+-2.0.vala,
1408 vapi/pango.vala: add NoArrayLength attributes
1409 * tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
1410 tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
1411 tests/test-007.vala, tests/test-008.vala, tests/test-009.vala,
1412 tests/test-010.vala, tests/test-011.vala, tests/test-012.vala,
1413 tests/test-013.vala, tests/test-014.vala, tests/test-015.vala,
1414 tests/test-016.vala, tests/test-017.vala, tests/test-018.vala,
1415 tests/test-019.vala, tests/test-020.vala: remove argc parameter
1417 2006-08-18 Jürg Billeter <j@bitron.ch>
1419 * vala/parser.y: remove read/write tokens
1420 * compiler/valacompiler.vala: support package dependencies
1422 * vapi/gtk+-2.0.deps
1423 * vapi/Makefile.am: update
1425 2006-08-18 Jürg Billeter <j@bitron.ch>
1427 * vala/parser.y, vala/valastruct.vala: support base types for structs
1428 * vala/valainterfacewriter.vala: obey set keyword
1429 * vapi/glib-2.0.vala: add SignalInvocationHint, SignalEmissionHook,
1430 SignalFlags, ValueArray, Math, Timeout, and PtrArray
1431 * vapi/cairo.vala: initial cairo binding
1432 * vapi/pango.vala, vapi/atk.vala, vapi/gdk-2.0.vala, vapi/gtk+-2.0.vala:
1433 bindings generated from Pango 1.13.5, ATK 1.12.1, and GTK+ 2.10.1
1434 * vapi/Makefile.am: update
1436 2006-08-11 Raffaele Sandrini <rasa@gmx.ch>
1438 * vala/valasymbolresolver.vala, vala/valatypereference.vala,
1439 vala/valaelementaccess.vala, vala/valadatatype.vala, vala/parser.y,
1440 vala/valaarray.vala: make those classes ready to process
1441 multidimensional arrays.
1442 * vala/scanner.l: remove ARRAY_QUALIFIER token
1443 * vala/valasemanticanalyzer.vala, vala/parser.y,
1444 vala/valacodegenerator.vala, vala/valacodegenerator.vala,
1445 vala/valacodevisitor.vala: add multidimensional array support however
1446 only one dimensional arrays can be created yet
1447 * vala/Makefile.am, vala/vala.h: update
1448 * vala/valatypereference.vala: remove source reference parameter
1449 when creating from an expression
1450 * vala/valacodegenerator.vala: add support for uint, long and ulong
1453 2006-08-10 Jürg Billeter <j@bitron.ch>
1455 * vala/scanner.l: support hexadecimal and octal integer literals,
1456 support hexadecimal escape sequences, support BASE and THIS
1457 * vala/parser.y: use BASE and THIS keywords
1458 * vala/valasemanticanalyzer.vala: don't use new base keyword as variable
1460 * vala/valacodegenerator.vala: simplify code
1461 * vala/valainterfacewriter.vala: obey base keyword
1463 2006-08-10 Jürg Billeter <j@bitron.ch>
1465 * vala/valacodegenerator.vala: fix memory management in switch
1467 * tests/test-020.vala: extend switch statement test
1469 2006-08-10 Jürg Billeter <j@bitron.ch>
1471 * vala/valacodegenerator.vala: support switch statements
1472 * vala/valaswitchsection.vala: add has_default_label () and
1473 get_statements () methods
1474 * vala/valaswitchstatement.vala: add get_sections () method
1475 * ccode/valaccodedostatement.vala
1476 * ccode/Makefile.am: update
1477 * tests/test-020.vala: test switch statements
1478 * tests/Makefile.am: update
1480 2006-08-10 Jürg Billeter <j@bitron.ch>
1482 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: use
1484 * vala/valainvokable.vala
1485 * vala/valafield.vala, vala/valaformalparameter.vala,
1486 vala/valamethod.vala, valasignal.vala,
1487 vala/valavariabledeclarator.vala: implement Invokable
1488 * vala/Makefile.am: update
1490 2006-08-10 Jürg Billeter <j@bitron.ch>
1492 * vala/parser.y: support constants in namespaces and constants without
1494 * vala/valasemanticanalyzer.vala: depend on implemented interfaces
1495 * vala/valacodegenerator.vala: always include glib-object.h for
1496 interfaces, append NULL to variable argument list calls
1497 * vala/valainterfacewriter.vala: support constants and ellipsis
1499 * vala/valaconstant.vala: make initializer optional
1500 * vala/valainterface.vala: implement get_lower_case_cprefix ()
1501 * vala/valanamespace.vala: support constants
1503 2006-08-10 Jürg Billeter <j@bitron.ch>
1505 * vala/scanner.l: accept real literals with trailing dot
1506 * vala/valasymbolresolver.vala: ignore non-type symbols
1507 * vala/valacodegenerator.vala: support float and double properties,
1508 adapt to Field changes, support compound assignments in properties
1509 * vala/valainterfacewriter.vala: support ReferenceType attribute
1510 * vala/valaclass.vala: implement get_lower_case_cprefix ()
1511 * vala/valadatatype.vala: add get_lower_case_cprefix () method
1512 * vala/valafield.vala: let get_cname return full C name
1513 * vala/valamethod.vala: use DataType.get_lower_case_cprefix ()
1514 * vala/valastruct.vala: implement get_lower_case_cprefix (), add
1515 set_is_reference_type () method
1517 2006-08-09 Jürg Billeter <j@bitron.ch>
1519 * vala/parser.y: adapt to Vala.Signal change
1520 * vala/valaattributeprocessor.vala: process signal attributes
1521 * vala/valacodegenerator.vala: manage memory of element access
1522 expressions, mark get_property and set_property functions static,
1523 support signal emitter functions
1524 * vala/valacodecontext.vala: use get_cinclude_filename method
1525 * vala/valainterfacewriter.vala: use C header filename of namespace,
1526 support signals, support NoAccessorMethod attribute
1527 * vala/valadatatype.vala: add default arguments
1528 * vala/valaenum.vala: make set_cprefix method public
1529 * vala/valanamespace.vala: add get_cheader_filename and
1530 set_cheader_filename methods
1531 * vala/valasignal.vala: add has_emitter property, add process_attributes
1533 * vala/valasourcefile.vala: add get_cinclude_filename method
1534 * compiler/valacompiler.vala: adapt to SourceFile changes
1536 2006-08-05 Jürg Billeter <j@bitron.ch>
1538 * vala/valaparser.vala: only parse .vala source files
1539 * vala/valasymbolbuilder.vala, vala/valaproperty.vala: support disabling
1540 automatic property accessor generation
1541 * vala/valasemanticanalyzer.vala: fix typo
1542 * vala/valacodegenerator.vala, vala/valainterfacewriter.vala,
1543 vala/valacodecontext.vala: use correct includes for libraries
1544 * vala/valacodegenerator.vala: use get_canonical_cconstant method for
1546 * vala/valainterfacewriter.vala: support interfaces, non-null types,
1547 callbacks, and construction methods
1548 * vala/valasignal.vala: add get_canonical_cconstant method
1549 * vala/valaenum.vala, vala/valainterface.vala, vala/valanamespace.vala,
1550 vala/valastruct: add default arguments
1551 * vala/Makefile.am: install libvala.so and header files
1552 * ccode/Makefile.am: install header files
1553 * compiler/valacompiler.vala: set library name in code context
1554 * compiler/Makefile.am: adapt to build system changes
1555 * vapi/glib-2.0.vala: add skeletons for Callback, Closure, IOChannel,
1556 TimeVal, Scanner, SpawnFlags, OptionGroup, MarkupParser, and Quark
1557 * vapi/Makefile.am: add vala-1.0.vala
1559 * configure.ac: disable static library by default, add vala-1.0.pc
1560 * Makefile.am: add vala-1.0.pc
1562 2006-08-02 Jürg Billeter <j@bitron.ch>
1564 * configure.ac: Post-release version bump.
1566 2006-08-02 Jürg Billeter <j@bitron.ch>
1568 * NEWS: update for 0.0.2 release
1569 * vala/valasemanticanalyzer.vala: check for floating reference in
1570 construction methods
1571 * vala/valasourcefile.vala, vala/valacodegenerator.vala,
1572 ccode/valaccodeincludedirective.vala: differentiate between
1573 package-internal and external includes
1574 * vapi/gtk+-2.0.vala: port to construction methods
1576 2006-08-02 Jürg Billeter <j@bitron.ch>
1578 * port to construction methods
1579 * vala/valaparenthesizedexpression.vala, vala/valareport.vala,
1580 vala/valareturnstatement.vala, vala/valasourcefilecycle.vala,
1581 vala/valasourcereference.vala, vala/valatypecheck.vala,
1582 vala/valatypeofexpression.vala, vala/valatypeparameter.vala: add
1583 interface documentation, use implicit namespace specification
1584 * vala/Makefile.am: sort source file list
1586 2006-08-02 Jürg Billeter <j@bitron.ch>
1588 * vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
1589 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
1590 vala/valainterfacewriter.vala, vala/valaclass.vala,
1591 vala/valaexpressionstatement.vala, vala/valamethod.vala,
1592 vala/valaobjectcreationexpression.vala, vala/valastatement.vala,
1593 vala/valastruct.vala: add support for construction methods
1594 * vala/valabooleanliteral.vala, vala/valaexpression.vala,
1595 vala/valaintegerliteral.vala, vala/valaliteral.vala,
1596 vala/valaliteralexpression.vala, vala/valamemberaccess.vala: add
1598 * vala/valamemberaccess.vala, vala/valatypereference.vala: support
1599 storing type arguments in MemberAccess
1600 * vala/valacodenode.vala: add parent_node property
1601 * vala/parser.y, vala/valaifstatement.vala: only allow blocks as
1603 * vala/valaenum.vala: implement get_type_id method
1604 * vala/valainterfacewriter.vala: output default expressions of formal
1606 * vala/valaformalparameter.vala: visit default expression
1607 * vala/valaobjectcreationexpression.vala, vala/valanullliteral.vala,
1608 vala/valaproperty.vala, vala/valapropertyaccessor.vala: add interface
1609 documentation, use implicit namespace specification
1610 * vala/vala.h: add valaelementaccess.h and valarealliteral.h
1611 * ccode/valaccodememberaccess.vala: don't mark is_pointer as construct
1612 * vapi/glib-2.0.vala: add GValue
1613 * vapi/gtk+-2.0.vala: small updates
1615 2006-07-31 Jürg Billeter <j@bitron.ch>
1617 * vala/parser.y: support prefix increment and decrement, fix parsing
1619 * vala/valasemanticanalyzer.vala: fix some bugs in error handling,
1620 support prefix increment and decrement
1621 * vala/valacodegenerator.vala: support prefix increment and decrement
1622 * vala/valanamespace.vala: add interface documentation, use implicit
1623 namespace specification
1624 * vala/valaunaryexpression.vala: support prefix increment and decrement
1625 * ccode/valaccodeunaryexpression.vala: support prefix increment and
1627 * vapi/glib-2.0.vala: add Environment struct
1629 2006-07-27 Jürg Billeter <j@bitron.ch>
1631 * vala/scanner.l: support CASE, DEFAULT, DO, and SWITCH
1632 * vala/parser.y: support switch and do statements
1633 * vala/valacodevisitor.vala: add support for switch and do statements
1634 * vala/valadostatement.vala
1635 * vala/valaswitchlabel.vala
1636 * vala/valaswitchsection.vala
1637 * vala/valaswitchstatement.vala
1638 * vala/valastatement.vala, vala/valasymbol.vala,
1639 vala/valaunaryexpression.vala, vala/valavariabledeclarator.vala,
1640 vala/valawhilestatement.vala: add interface documentation, use
1641 implicit namespace specification
1642 * vala/vala.h, vala/Makefile.am: update
1643 * vapi/glib-2.0.vala: don't use default keyword
1645 2006-07-27 Jürg Billeter <j@bitron.ch>
1647 * vala/parser.y: support for loops with local variable declaration in
1650 2006-07-27 Jürg Billeter <j@bitron.ch>
1652 * vala/parser.y: don't require developer to explicitly write static in
1653 namespace field declarations, support type parameters in interfaces
1655 * vala/valasymbolresolver.vala: support interfaces and callbacks
1656 * vala/valasemanticanalyzer.vala: use is_subtype_of method, support
1658 * vala/valamemorymanager.vala: support callbacks in fields
1659 * vala/valacodegenerator.vala: support callbacks in fields
1660 * vala/valacallback.vala: support type parameters
1661 * vala/valaclass.vala: add is_subtype_of method
1662 * vala/valadatatype.vala: add is_subtype_of method
1663 * vala/valainterface.vala: add is_subtype_of method
1665 2006-07-26 Jürg Billeter <j@bitron.ch>
1667 * vala/scanner.l: support casting arrays
1668 * vala/parser.y: don't require developer to explicitly write static in
1669 namespace method declarations
1670 * vala/valaarray.vala: correct cname for arrays with value-type elements
1671 * vala/valacodenode.vala: save source line reference in ccodenode
1672 * ccode/valaccodelinedirective.vala
1673 * ccode/valaccodenode.vala: support source line reference
1674 * ccode/Makefile.am: update
1675 * vapi/glib-2.0.vala: add to_string methods to integer types, add size
1676 method to string, add u_sleep method to Thread, fix memory management
1677 in List and SList, add sort method to List
1679 2006-07-19 Jürg Billeter <j@bitron.ch>
1681 * vala/valatypereference.vala: use more expressive property names, add
1683 * vala/parser.y, vala/valasymbolbuilder.vala,
1684 vala/valasymbolresolver.vala, vala/valasemanticanalyzer.vala,
1685 vala/valamemorymanager.vala, vala/valacodegenerator.vala,
1686 vala/valainterfacewriter.vala, vala/valasourcefile.vala,
1687 vala/valacallback.vala, vala/valaclassregisterfunction.vala,
1688 vala/valasignal.vala: adapt to changes in TypeReference
1689 * vala/valasourcefile.vala: replace public fields by properties /
1691 * vala/valacodecontext.vala: adapt to changes in SourceFile
1692 * vala/valaparser.vala: correct handling of source files without header
1694 * vala/valasymbolbuilder.vala: don't generate code for VAPI files
1695 * vala/valasemanticanalyzer.vala: report error respectively warning if
1696 method return type misses ownership transfer
1697 * vala/valainterfacewriter.vala: correct property declaration output
1698 * vala/valaparser.vala, vala/valasourcefile.vala, vala/valaliteral.vala,
1699 vala/valamemberaccessibility.vala, vala/valanamedargument.vala,
1700 vala/valanamespacereference.vala, vala/valatypereference.vala: add
1701 interface documentation, use implicit namespace specification
1703 2006-07-18 Jürg Billeter <j@bitron.ch>
1705 * vala/valasymbolresolver.vala: make sure that current_scope isn't null
1706 * vala/valamemorymanager.vala: start to support memory management with
1708 * vala/valacodegenerator.vala: support iteration over SList, properties
1709 without accessor methods
1710 * vapi/glib-2.0.vala: add string.hash (), Error fields and SList
1711 * vapi/gtk+-2.0.vala: add StatusIcon class
1712 * README: mention exceptions
1714 2006-07-16 Jürg Billeter <j@bitron.ch>
1716 * configure.ac: Post-release version bump.
1717 * vala/parser.y: remove g_object_unref call to fix crash in parsing
1719 * vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala: support
1721 * vapi/glib-2.0.vala: GString enhancements
1722 * vapi/Makefile.am: dist gtk+-2.0.vala and pango.vala
1724 2006-07-15 Jürg Billeter <j@bitron.ch>
1726 * NEWS: update for 0.0.1 release
1727 * README: add introduction
1728 * COPYING: replace by LGPL
1729 * compiler/valacompiler.vala: add /usr/local/share/vala/vapi ad default
1731 * vapi/glib-2.0.vala: File and HashTable enhancements
1733 2006-07-14 Raffaele Sandrini <rasa@gmx.ch>
1735 * vala/valacodegenerator.vala, vala/valasymbolresolver.vala,
1736 vala/scanner.l, vala/valatypereference.vala,
1737 vala/valasemanticanalyzer.vala, vala/valaelementaccess.vala,
1738 vala/valadatatype.vala, vala/parser.y, vala/valaarray.vala,
1739 vala/valacodevisitor.vala, ccode/valaccodeelementaccess.vala: add
1740 element access support
1741 * vala/valasemanticanalyzer.vala: add visit_postfix_expression
1743 * tests/test-019.vala: add element access testcase
1744 * vala/Makefile.am, tests/Makefile.am, ccode/Makefile.am: update
1746 2006-07-14 Jürg Billeter <j@bitron.ch>
1748 * vala/valacodecontext.vala: ignore file-internal dependencies
1749 * vala/valasemanticanalyzer.vala: mark string literals as non-null, add
1751 * vala/valamemorymanager.vala: only check for leaks with reference
1752 types, manage memory in field initializers
1753 * vala/valacodegenerator.vala: add non-null parameter typechecks for
1754 structs, simplify ref expression if expression is known to be non-null
1755 * vapi/glib-2.0.vala: unichar, string, String, and Path enhancements,
1758 2006-07-10 Jürg Billeter <j@bitron.ch>
1760 * vala/parser.y: adapt to changes in InvocationExpression,
1761 LocalVariableDeclaration, and InitializerList
1762 * vala/valasemanticanalyzer.vala: add some implicit casts, fix assigning
1763 callback to field, adapt to changes in InvocationExpression
1764 * vala/valamemorymanager.vala: adapt to change in InvocationExpression
1765 * vala/valacodegenerator.vala: fix signal handler without parameters,
1766 fix access to value-type struct members, adapt to changes in
1767 LocalVariableDeclaration, InitializerList, and InvocationExprssion
1768 * vala/valaclass.vala: don't let private static fields influence
1769 has_private_fields, correct marshaller type name
1770 * vala/valaifstatement.vala, vala/valainitializerlist.vala,
1771 vala/valainstancecast.vala, vala/valaintegerliteral.vala,
1772 vala/valainvocationexpression.vala, vala/valaliteralexpression.vala,
1773 vala/valalocalvariabledeclaration.vala: add interface documentation,
1774 use implicit namespace specification
1775 * compiler/valacompiler.vala: fix --vapidir handling
1776 * vapi/glib-2.0.vala: add MainLoop, MainContext, IdleSource, Source, and
1779 2006-07-08 Jürg Billeter <j@bitron.ch>
1781 * vala/valasemanticanalyzer.vala: don't allow write access to read-only
1783 * vala/valacodegenerator.vala: adapt to changes in CCodeFragment and
1785 * vala/valapostfixexpression.vala, ccode/valaccodebinaryexpression.vala,
1786 ccode/valaccodeblock.vala, ccode/valaccodebreakstatement.vala,
1787 ccode/valaccodecasestatement.vala,
1788 ccode/valaccodecommaexpressoin.vala, ccode/valaccodecomment.vala,
1789 ccode/valaccodeconditionalexpression.vala,
1790 ccode/valaccodeconstant.vala, ccode/valaccodecontinuestatement.vala,
1791 ccode/valaccodedeclaration.vala, ccode/valaccodedeclarator.vala,
1792 ccode/valaccodeenum.vala, ccode/valaccodeemptystatement.vala,
1793 ccode/valaccodeexpressionstatement.vala,
1794 ccode/valaccodeformalparameter.vala, ccode/valaccodeforstatement.vala,
1795 ccode/valaccodefragment.vala, ccode/valaccodefunction.vala,
1796 ccode/valaccodefunctioncall.vala,
1797 ccode/valaccodefunctiondeclarator.vala,
1798 ccode/valaccodeidentifier.vala, ccode/valaccodeifstatement.vala,
1799 ccode/valaccodeincludedirective.vala,
1800 ccode/valaccodeinitializerlist.vala,
1801 ccode/valaccodemacroreplacement.vala,
1802 ccode/valaccodememberaccess.vala, ccode/valaccodemodifiers.vala,
1803 ccode/valaccodenewline.vala, ccode/valaccodeoncesection.vala,
1804 ccode/valaccodeparenthesizedexpression.vala,
1805 ccode/valaccodereturnstatement.vala, ccode/valaccodestatement.vala,
1806 ccode/valaccodestruct.vala, ccode/valaccodeswitchstatement.vala,
1807 ccode/valaccodeunaryexpression.vala,
1808 ccode/valaccodevariabledeclarator.vala,
1809 ccode/valaccodewhilestatement.vala, ccode/valaccodewriter.vala: add
1810 interface documentation, use implicit namespace specification
1812 2006-07-08 Jürg Billeter <j@bitron.ch>
1814 * vala/valasemanticanalyzer.vala: don't allow access to private members
1816 2006-07-08 Jürg Billeter <j@bitron.ch>
1818 * vala/valasemanticanalyzer.vala: check method signatures of overriding
1820 * vala/parser.y, vala/valaclassregisterfunction.vala,
1821 vala/valatyperegisterfunction.vala: support abstract classes
1822 * vala/valamethod.vala: add equals method
1823 * vala/valatypereference.vala: add equals method
1824 * corrects overriding methods to match signatures of overridden methods
1825 to fix build with current compiler
1827 2006-07-08 Jürg Billeter <j@bitron.ch>
1829 * vala/parser.y, vala/valacodegenerator.vala: adapt to ForStatement API
1831 * vala/valaclass.vala: make {get,set}_lower_case_csuffix methods private
1832 * vala/valaenum.vala, vala/valaenumvalue.vala,
1833 vala/valaexpressionstatement.vala, vala/valafield.vala,
1834 vala/valaflags.vala, vala/valaflagsvalue.vala,
1835 vala/valaforeachstatement.vala, vala/valaforstatement.vala: add
1836 interface documentation, use implicit namespace specification
1838 2006-07-08 Jürg Billeter <j@bitron.ch>
1840 * vala/parser.y: adapt to Method API changes
1841 * vala/valasemanticanalyzer.vala: support signals, mark private signal
1842 handlers as instance_last
1843 * vala/valamemorymanager.vala: support signals
1844 * vala/valacodegenerator.vala: support signals, methods with
1846 * vala/valaclass.vala: add get_type_id and get_marshaller_type_name
1848 * vala/valadatatype.vala: add get_marshaller_type_name method
1849 * vala/valastruct.vala: move type_id attribute to CCode, support
1850 marshaller_type_name attribute
1851 * vala/valainterfacewriter.vala, vala/valamethod.vala,
1852 vala/valastruct.vala, ccode/valaccodeexpression.vala,
1853 ccode/valaccodenode.vala: add interface documentation, use implicit
1854 namespace specification
1855 * vala/valacallback.vala, vala/valasignal.vala: improve documentation
1856 * ccode/valaccodecastexpression.vala: type cast in C code
1857 * ccode/Makefile.am: update
1858 * tests/test-018.vala: test signals
1859 * tests/Makefile.am: update
1860 * vapi/glib-2.0.vala: add type_id and marshaller_type_name attributes
1862 2006-07-07 Jürg Billeter <j@bitron.ch>
1864 * vala/valacodegenerator.vala, vala/valaclassregisterfunction.vala:
1866 * vala/parser.y, vala/valasemanticanalyzer.vala,
1867 vala/valalambdaexpression.vala: support lambda expressions with
1869 * vala/valaclassregisterfunction.vala, vala/valaemptystatement.vala,
1870 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
1871 vala/valatyperegisterfunction.vala: add interface documentation, use
1872 implicit namespace specification
1873 * tests/test-015.vala: test lambda expressions with statement body
1874 * tests/test-017.vala: test interfaces
1875 * tests/Makefile.am: update
1877 2006-07-07 Jürg Billeter <j@bitron.ch>
1879 * vala/valaconstructor.vala, vala/valacontinuestatement.vala,
1880 vala/valadeclarationstatement.vala, vala/valadestructor.vala: add
1881 interface documentation, use implicit namespace specification
1883 2006-07-07 Jürg Billeter <j@bitron.ch>
1885 * vala/valacodecontext.vala: use continue statements to decrease
1887 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
1888 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1889 vala/valacodegenerator.vala, vala/valaconditionalexpression.vala,
1890 vala/valaconstant.vala: add interface documentation, use implicit
1891 namespace specification
1892 * vala/valasemanticanalyzer.vala: check that if, while, for, and
1893 conditional expression conditions are boolean
1894 * vala/valaclass.vala: remove dummy accessor, breaks build with old
1896 * compiler/valacompiler.vala: use implicit namespace specification
1897 * tests/test-016.vala: test conditional expressions
1898 * tests/Makefile.am: update
1900 2006-07-07 Jürg Billeter <j@bitron.ch>
1902 * vala/valacodecontext.vala: add interface documentation, use implicit
1903 namespace specification
1904 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
1905 vala/valasemanticanalyzer.vala: adapt to change in CodeContext
1907 2006-07-06 Jürg Billeter <j@bitron.ch>
1909 * vala/parser.y, vala/valacodevisitor.vala, vala/valasymbolbuilder.vala,
1910 vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1911 vala/valacodegenerator.vala, vala/valatypereference.vala, vala/vala.h,
1912 vala/Makefile.am: merge SimpleName into MemberAccess
1913 * vala/valasymbolresolver.vala, vala/valainterfacewriter.vala: adapt to
1915 * vala/valasemanticanalyzer.vala: support non-static lambda expressions
1916 and lambda expressions without return values
1917 * vala/valacodegenerator.vala: support conditional expressions, support
1918 lambda expressions as signal handlers, support read-only and
1919 write-only properties
1920 * vala/valacodevisitor.vala, vala/valamemorymanager.vala,
1921 vala/valaassignment.vala: visit at beginning and end
1922 * vala/valacallback.vala: add instance property
1923 * vala/valasignal.vala: add get_callback method
1924 * vala/valacastexpression.vala, vala/valacharacterliteral.vala,
1925 vala/valaclass.vala, vala/valamemberaccess.vala, vala/valasignal.vala:
1926 add interface documentation, use implicit namespace specification
1928 2006-07-05 Jürg Billeter <j@bitron.ch>
1930 * vala/parser.y: don't pass parameter list to lambda expression
1932 * vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1933 vala/valacodegenerator.vala: support static lambda expressions and
1935 * vala/valainvocationexpression.vala: visit call node before visiting
1936 begin of invocation expression
1937 * vala/valaformalparameter.vala, vala/valalambdaexpression.vala: add
1938 interface documentation, use implicit namespace specification
1939 * vala/valamethod.vala: allow nested methods
1940 * tests/test-015.vala: test lambda expressions
1941 * tests/Makefile.am: update
1943 2006-07-04 Jürg Billeter <j@bitron.ch>
1945 * vala/parser.y: support implicit namespace specification in callback
1947 * vala/valasemanticanalyzer.vala, vala/valamemorymanager.vala,
1948 vala/valacodegenerator.vala: support callbacks
1949 * vala/valaassignment.vala, vala/valabinaryexpression.vala: improve
1951 * vala/valabooleanliteral.vala, vala/valabreakstatement.vala,
1952 vala/valacallback.vala: add interface documentation, use implicit
1953 namespace specification
1954 * vala/valacallback.vala: add matches_method method, mark as
1956 * ccode/valaccodetypedefinition.vala: replace typedef_name by
1957 declarator, add interface documentation, use implicit namespace
1959 * tests/test-013.vala: test break
1960 * tests/test-014.vala: test callback
1961 * tests/Makefile.am: update
1963 2006-07-04 Jürg Billeter <j@bitron.ch>
1965 * vala/valablock.vala: add interface documentation, use implicit
1966 namespace specification
1967 * tests/test-011.vala: test binary expressions
1968 * tests/test-012.vala: test blocks
1969 * configure.ac, Makefile.am, tests/Makefile.am: distribute tests
1971 2006-07-04 Jürg Billeter <j@bitron.ch>
1973 * vala/valacodevisitor.vala, vala/valaattributeprocessor.vala,
1974 vala/valabinaryexpression.vala: add interface documentation, use
1975 implicit namespace specification
1976 * vala/valaassignment.vala, vala/valaattribute.vala: documentation
1979 2006-07-04 Jürg Billeter <j@bitron.ch>
1981 * vala/valacodegenerator.vala: generate assignment with appropriate
1983 * vala/valaassignment.vala: use implicit namespace specification
1984 * ccode/valaccodeassignment.vala: support assignment operators , add
1985 interface documentation, use implicit namespace specification
1986 * tests/test-010.vala: test assignments
1988 2006-07-03 Jürg Billeter <j@bitron.ch>
1990 * vala/parser.y: support implicit namespace specification in struct,
1991 interface, enum, and flags declaration
1992 * vala/valasymbolbuilder.vala: report error when declaring non-static
1994 * vala/valasemanticanalyzer.vala: analyze return statements
1995 * vala/valacodegenerator.vala: correctly set GParamFlags for properties,
1996 initialize static variables, add preconditions to property accessors,
1997 support namespace methods
1998 * vala/valaassignment.vala, vala/valaattribute.vala: add interface
1999 documentation, use implicit namespace specification
2000 * tests/test-001.vala, tests/test-002.vala, tests/test-003.vala,
2001 tests/test-004.vala, tests/test-005.vala, tests/test-006.vala,
2002 tests/test-007.vala, tests/test-008.vala, tests/test-009.vala:
2003 update test cases to print test values
2005 2006-06-30 Jürg Billeter <j@bitron.ch>
2007 * vala/valacodenode.vala, vala/valadatatype.vala,
2008 vala/valaexpression.vala: use implicit namespace specification,
2011 2006-06-30 Jürg Billeter <j@bitron.ch>
2013 * vala/parser.y: support implicit namespace specification in class
2016 2006-06-29 Jürg Billeter <j@bitron.ch>
2018 * vala/valacodegenerator.vala, vala/valaclass.vala,
2019 vala/valadatatype.vala, vala/valastruct.vala: distinguish between
2020 ref_function/unref_function and dup_function/free_function
2021 * vala/valadatatype.vala: add interface documentation
2022 * vapi/glib-2.0.vala: use dup_function attribute, keep ref_function for
2025 2006-06-29 Jürg Billeter <j@bitron.ch>
2027 * vala/valacodenode.vala, vala/valaexpression.vala: add interface
2030 2006-06-28 Jürg Billeter <j@bitron.ch>
2032 * vala/valasymbolbuilder.vala: add private add_symbol helper method
2033 * vala/valasymbolresolver.vala: tiny refactoring of GObject lookup
2034 * vala/valasemanticanalyzer.vala: use get_parameters method of Callback
2035 * vala/valacallback.vala, vala/valaintegerliteral.vala,
2036 vala/valarealliteral.vala, vala/valastringliteral.vala: replace public
2037 fields by properties / private fields, don't mark properties as
2038 construct-only, use non-null types
2039 * vala/valaattribute.vala, vala/valacodenode.vala,
2040 vala/valaconstructor.vala, vala/valadatatype.vala,
2041 vala/valadestructor.vala, vala/valaenumvalue.vala,
2042 vala/valaexpression.vala, vala/valafield.vala,
2043 vala/valaflagsvalue.vala, vala/valaformalparameter.vala,
2044 vala/valaliteral.vala, vala/valalocalvariabledeclaration.vala,
2045 vala/valamethod.vala, vala/valanamedargument.vala,
2046 vala/valanamespace.vala, vala/valanamespacereference.vala,
2047 vala/valaproperty.vala, vala/valapropertyaccessor.vala,
2048 vala/valasignal.vala, vala/valastatement.vala,
2049 vala/valatypeparameter.vala, vala/valatypereference.vala,
2050 vala/valavariabledeclarator.vala: move source_reference to CodeNode
2052 2006-06-28 Jürg Billeter <j@bitron.ch>
2054 * vala/valabooleanliteral.vala, vala/valacharacterliteral.vala,
2055 vala/valaintegerliteral.vala, vala/valaliteral.vala,
2056 vala/valanullliteral.vala, vala/valarealliteral.vala,
2057 vala/valastringliteral.vala: move source_reference to Vala.Literal,
2058 use non-null types, don't mark properties as construct-only
2060 2006-06-26 Jürg Billeter <j@bitron.ch>
2062 * vala/parser.y: plug some memory leaks, adapt to Vala.Block changes
2063 * vala/valaattribute.vala, vala/valabinaryexpression.vala,
2064 vala/valablock.vala, vala/valabooleanexpression.vala,
2065 vala/valabreakstatement.vala, vala/valaliteral.vala,
2066 vala/valastatement.vala: replace public fields by properties / private
2067 fields, don't mark properties as construct-only, use non-null types
2068 * vala/valadatatype.vala: renamed from Vala.Type_ to Vala.DataType
2069 * vala/valasymbolbuilder.vala, vala/valasymbolresolver.vala,
2070 vala/valasemanticanalyzer.vala, vala/valacodegenerator.vala,
2071 vala/valasourcefile.vala, vala/valacallback.vala, vala/valaclass.vala,
2072 vala/valaclassregisterfunction.vala, vala/valaconstant.vala,
2073 vala/valaenum.vala, vala/valaflags.vala, vala/valainstancecast.vala,
2074 vala/valainterface.vala, vala/valainterfaceregisterfunction.vala,
2075 vala/valamethod.vala, vala/valastruct.vala,
2076 vala/valatypeparameter.vala, vala/valatypereference.vala,
2077 vala/valatypergisterfunction.vala: adapt to renaming of Vala.Type_ to
2079 * vala/Makefile.am: update
2081 2006-06-22 Jürg Billeter <j@bitron.ch>
2083 * vala/valaassignment.vala: don't mark properties as construct-only,
2085 * vala/valacodenode.vala: use non-null type
2086 * vala/valaexpression.vala: replace public fields by properties
2088 2006-06-22 Jürg Billeter <j@bitron.ch>
2090 * vala/parser.y: replace specialized interface member declarations by
2091 standard member declarations to allow non-abstract methods in
2093 * vala/valacodegenerator.vala: cast instance in property setter
2096 2006-06-22 Jürg Billeter <j@bitron.ch>
2098 * vala/scanner.l: support LAMBDA and CALLBACK
2099 * vala/parser.y: support callbacks and lambda expressions
2100 * vala/valacodevisitor.vala: add visit methods for callbacks and lambda
2102 * vala/valasymbolbuilder.vala: use non-null parameter types, support
2104 * vala/valasemanticanalyzer.vala: partially support interface methods,
2105 support callback invocations
2106 * vala/valamemorymanager.vala: support callback invocations
2107 * vala/valacodegenerator.vala: partially support interface methods
2108 * vala/valacallback.vala: initial implementation
2109 * vala/valacodenode.vala: replace public fields by properties
2110 * vala/valaexpression.vala: add expected_type field
2111 * vala/valainvocationexpression.vala: also visit at beginning
2112 * vala/valalambdaexpression.vala
2113 * vala/valanamespace.vala: support callbacks
2114 * vala/vala.h: update
2115 * vala/Makefile.am: update
2117 2006-06-18 Jürg Billeter <j@bitron.ch>
2119 * vala/scanner.l: support TYPEOF
2120 * vala/parser.y: support typeof expressions, out ref parameters, and
2122 * vala/valacodevisitor.vala: add visit method for typeof expressions
2123 * vala/valaattributeprocessor.vala: use non-null parameter types,
2124 support enums and properties
2125 * vala/valasemanticanalyzer.vala: support floating references
2126 * vala/valamemorymanager.vala: ignore signal connections
2127 * vala/valacodegenerator.vala: reset temp variable id at beginning of
2128 each file, fix out parameters, support properties without accessor
2129 methods, support floating references, add typeof expression, support
2130 static signal handlers
2131 * vala/valaclass.vala: use default arguments
2132 * vala/valaenum.vala: support cname, cprefix, and cheader_filename
2134 * vala/valaenumvalue.vala: use Enum.get_cprefix ()
2135 * vala/valamethod.vala: support FloatingReference attribute
2136 * vala/valanamespace.vala: use default arguments
2137 * vala/valaproperty.vala: support NoAccessorMethod attribute
2138 * vala/valastruct.vala: support type_id
2139 * vala/valatype.vala: add abstract get_type_id method
2140 * vala/valatypeofexpression.vala
2141 * vala/valatypereference.vala: add floating_reference property, correct
2142 to_string method signature
2143 * vala/vala.h: update
2144 * vala/Makefile.am: update
2145 * vapi/glib-2.0.vala: add GInitiallyUnowned
2146 * vapi/gtk+-2.0.vala: start of a GTK+ binding
2147 * vapi/pango.vala: start of a Pango binding
2149 2006-06-17 Jürg Billeter <j@bitron.ch>
2151 * vala/scanner.l: don't leak comment texts, support generic types with
2153 * vala/parser.y: plug most memory leaks
2154 * vala/valacodecontext.vala: work around memory management issues
2155 * vala/valasourcefile.vala: break reference cycles
2156 * vala/valasourcefilecycle.vala: break reference cycles
2157 * vala/valasymbolbuilder.vala: store `this` and `value` parameters in
2158 appropriate member node
2159 * vala/valasymbolresolver.vala: break reference cycle
2160 * vala/valasemanticanalyzer.vala: break reference cycle, promote local
2161 variables with ownership transferring initializer, store foreach
2162 variable declarator in statement object, assignments to properties
2163 don't take value ownership, make null type checks behave well on
2164 either side of a comparison
2165 * vala/valamemorymanager.vala: add support for named arguments,
2166 properties, and ellipsis parameter
2167 * vala/valacodegenerator.vala: add dispose function, register properties
2168 with static strings, don't leak strings when setting properties,
2169 support freeing string arrays, support freeing lists with allocated
2170 items, free local variables before return statements, free old value
2172 * vala/valainterfacewriter.vala: output more type reference information
2173 * vala/valaforeachstatement.vala: reference variable_declarator
2174 * vala/valaforstatement.vala: correct generic type arguments
2175 * vala/valamethod.vala: break reference cycle
2176 * vala/valaproperty.vala: reference this_parameter, add
2177 get_canoncial_cconstant method
2178 * vala/valapropertyaccessor.vala: reference value_parameter
2179 * vala/valasimplename.vala: remove unneeded type_argument_list
2180 parameter from constructor
2181 * vala/valasourcereference.vala: let to_string transfer ownership
2182 * vala/valastruct.vala: correct generic type argument
2183 * vala/valasymbol.vala: improve memory management
2184 * vala/valatype.vala: break reference cycles, let get_lower_case_cname
2186 * vala/valatypereference.vala: break reference cycle, use
2188 * vala/vala.h: add valaflags.h
2189 * ccode/valaccodefunction.vala: work around missing list deep copy
2190 * ccode/valaccodewriter.vala: don't manually free objects
2191 * compiler/valacompiler.vala: enable memory management by default,
2192 valac doesn't work anymore without memory management
2193 * vapi/glib-2.0.vala: add memory management information
2195 2006-06-15 Jürg Billeter <j@bitron.ch>
2197 * vala/valasemanticanalyzer.vala: add local variables to block
2198 * vala/valamemorymanager.vala: analyze local variable initializers
2199 * vala/valacodegenerator.vala: free local variables at end of block,
2200 only free non-null variables, use some strong references due to memory
2201 manager deficiencies
2202 * vala/valablock.vala: use non-null parameter types, add local variable
2204 * vala/valaenum.vala: let get_upper_case_cname transfer ownership
2205 * vala/valastruct.vala: add free_function attribute
2206 * ccode/valaccodewriter.vala: set freed values to null
2207 * vapi/glib-2.0.vala: add free functions
2209 2006-06-15 Raffaele Sandrini <rasa@gmx.ch>
2211 * vapi/libxml-2.0.vala: add basic libxml2 reader support
2212 * vapi/Makefile.am: add libxml-2.0.vala
2214 2006-06-14 Jürg Billeter <j@bitron.ch>
2216 * vala/parser.y: set is_lvalue_ref in property declarations
2217 * vala/valacodecontext.vala: use non-null parameter types
2218 * vala/valasymbolresolver.vala: fix lookup in namespaces of using
2219 directives, reset is_lvalue_ref where appropriate
2220 * vala/valasemanticanalyzer.vala: use non-null parameter types,
2221 correctly set is_ref and is_lvalue_ref in variable declarators
2222 * vala/valamemorymanager.vala: support methods which transfer ownership
2223 of arguments and or return value, analyze assignments
2224 * vala/valacodegenerator.vala: add missing reference increment calls,
2225 small memory management improvements
2226 * vala/valaclass.vala: use non-null parameter types
2227 * vala/valaexpression.vala: add ref_missing
2228 * vala/valastruct.vala: support ref_function attribute, use non-null
2230 * vala/valatype.vala: let get_upper_case_cname return ref string
2231 * vala/valatypereference.vala: add copy method
2232 * ccode/valaccodeconditionalexpression.vala
2233 * ccode/valaccodefunctioncall.vala: use non-null parameter types
2234 * ccode/Makefile.am: update
2235 * compiler/valacompiler.vala: process attributes before resolving
2236 symbols to have reference_type information available in resolver
2237 * vapi/glib-2.0.vala: add ref_function attributes to string and List,
2238 use ref parameters in List and HashTable until the compiler can handle
2241 2006-06-14 Jürg Billeter <j@bitron.ch>
2243 * vala/parser.y: set is_lvalue_ref for variables and fields
2244 * vala/valasemanticanalyzer.vala: variables and fields never transfer
2246 * vala/valamemorymanager.vala: use non-null parameter types, analyze
2248 * vala/valacodegenerator.vala: use non-null parameter types, support
2249 memory management for temporary variables in variable initializers,
2250 initialize all uninitialized references to null
2251 * vala/valareturnstatement.vala: visit end of full expression
2252 * vala/valatypereference.vala: add is_lvalue_ref property
2253 * vala/valavariabledeclarator.vala: visit end of full expression
2255 2006-06-14 Jürg Billeter <j@bitron.ch>
2257 * vala/valacodevisitor.vala: use non-null parameter types, add visit
2258 method for full expressions
2259 * vala/valasymbolresolver.vala: add some missing casts
2260 * vala/valasemanticanalyzer.vala: support memory management for
2262 * vala/valamemorymanager.vala: visitor to detect leaked references
2263 * vala/valacodegenerator.vala: add automatic memory management for
2264 temporary variables, add some missing casts
2265 * vala/valaassignment.vala: move source_reference to Expression
2266 * vala/valabinaryexpression.vala: move source_reference to Expression
2267 * vala/valacastexpression.vala: move source_reference to Expression
2268 * vala/valaconditionalexpression.vala: move source_reference to
2270 * vala/valaclass.vala: implement memory management methods
2271 * vala/valaexpression.vala: add source_reference, ref_leaked, and
2273 * vala/valaforstatement.vala: visit end of full expression
2274 * vala/valaifstatement.vala: visit end of full expression
2275 * vala/valainitializerlist.vala: move source_reference to Expression
2276 * vala/valainvocationexpression.vala: move source_reference to
2278 * vala/valaliteralexpression.vala: move source_reference to Expression
2279 * vala/valamemberaccess.vala: move source_reference to Expression
2280 * vala/valaobjectcreationexpression.vala: move source_reference to
2282 * vala/valaparenthesizedexpression.vala: move source_reference to
2284 * vala/valapostfixexpression.vala: move source_reference to Expression
2285 * vala/valasimplename.vala: move source_reference to Expression
2286 * vala/valastruct.vala: implement memory management methods
2287 * vala/valatype.vala: add abstract is_reference_counting,
2288 get_ref_function, and get_free_function methods
2289 * vala/valatypecheck.vala: move source_reference to Expression
2290 * vala/valaunaryexpression.vala: move source_reference to Expression
2291 * vala/valawhilestatement.vala: visit end of full expression
2292 * vala/Makefile.am: update
2293 * ccode/valaccodecommaexpression.vala
2294 * ccode/Makefile.am: update
2295 * compiler/valacompiler.vala: add enable-memory-management option
2296 * vapi/glib-2.0.vala: minor GType enhancements
2298 2006-06-07 Jürg Billeter <j@bitron.ch>
2300 * vala/valacodegenerator.vala: fix cname of constants, casts of self
2302 2006-06-07 Jürg Billeter <j@bitron.ch>
2304 * vala/valasemanticanalyzer.vala: add missing source dependencies
2305 * vala/valacodegenerator.vala: check parameter types at runtime
2307 2006-06-07 Jürg Billeter <j@bitron.ch>
2309 * vala/scanner.l: support REAL_LITERAL, TILDE, SIGNAL
2310 * vala/parser.y: support flags, signals, constructors, destructors, real
2311 literals, assignment operators, and non-null types
2312 * vala/valacodevisitor.vala: add visit methods for signals,
2313 constructors, destructors, and real literals
2314 * vala/valasymbolbuilder.vala: support signals, constructors,
2316 * vala/valasemanticanalyzer.vala: support constructors, real literals,
2317 and default arguments, fix lookup in namespaces of using directives
2318 * vala/valacodegenerator.vala: use default arguments and type register
2319 function classes, support constructors, interfaces, real literals,
2320 default arguments, casts, and signals, cast method arguments if
2322 * vala/valasourcefile.vala: use default arguments
2323 * vala/valaassignment.vala: add operator
2324 * vala/valacallback.vala: skeleton for callbacks
2325 * vala/valaclass.vala: add signals, constructor, and destructor
2326 * vala/valaclassregisterfunction.vala: get_type function for classes
2327 * vala/valaconstant.vala: use default arguments
2328 * vala/valaconstructor.vala
2329 * vala/valadestructor.vala
2330 * vala/valaenum.vala: use default arguments
2331 * vala/valaflags.vala
2332 * vala/valaflagsvalue.vala:
2333 * vala/valaformalparameter.vala: add default_expression
2334 * vala/valainstancecast.vala: dynamic instance cast
2335 * vala/valainterface.vala: add signals
2336 * vala/valainterfaceregisterfunction.vala: get_type function for
2338 * vala/valanamespace.vala: add flags, use default arguments
2339 * vala/valaproperty.vala: use default arguments
2340 * vala/valarealliteral.vala:
2341 * vala/valasignal.vala
2342 * vala/valastruct.vala: use default arguments
2343 * vala/valastringliteral.vala: use default arguments
2344 * vala/valatypereference.vala: add is_weak property
2345 * vala/valatyperegisterfunction.vala
2346 * vala/vala.h: update
2347 * vala/Makefile.am: update
2348 * ccode/valaccodeblock.vala: add prepend_statement method
2349 * ccode/valaccodewriter.vala: correctly indent multi-line comments
2350 * vapi/glib-2.0.vala: add float and double, use default arguments,
2351 temporarily remove astring
2353 2006-05-31 Jürg Billeter <j@bitron.ch>
2355 * vala/parser.y: support interfaces, adapt to Class/Struct/Type changes,
2356 improve error handling
2357 * vala/valacodevisitor.vala: support interfaces
2358 * vala/valasymbolbuilder.vala: improve error handling
2359 * vala/valasymbolresolver.vala: use operators to compare strings
2360 * vala/valasemanticanalyzer.vala: improve error handling, convert method
2361 argument and type mismatch warnings to errors, add skeleton for
2362 expressoin type checks, support string comparison operators
2363 * vala/valacodegenerator.vala: fix warning, create structs for
2364 interfaces, adapt to Class/Struct/Type changes, refactor and fix code
2365 in visit_simple_name and visit_member_access, use operators to compare
2367 * vala/valainterfacewriter.vala: use operators to compare strings
2368 * vala/valasourcefile.vala: fix warnings
2369 * vala/valaclass.vala: don't inherit from Struct
2370 * vala/valacodenode.vala: add error flag
2371 * vala/valaconstant.vala: add get_cname method
2372 * vala/valaenum.vala: override get_upper_case_cname method
2373 * vala/valaenumvalue.vala: adapt to Class/Struct/Type changes
2374 * vala/valafield.vala: use operators to compare strings
2375 * vala/valainterface.vala
2376 * vala/valainvocationexpression.vala: add add_argument method
2377 * vala/valamethod.vala: adapt to Class/Struct/Type changes, use
2378 operators to compare strings
2379 * vala/valanamespace.vala: support interfaces, use operators to compare
2381 * vala/valastringliteral.vala: fix warning
2382 * vala/valastruct.vala: inline visit_children method, use operators to
2384 * vala/valatype.vala: add abstract get_lower_case_cname method
2385 * vala/valatypereference.vala: add to_string method
2386 * vala/vala.h: update
2387 * vala/Makefile.am: update
2388 * vapi/glib-2.0.vala: small fixes
2390 2006-05-26 Jürg Billeter <j@bitron.ch>
2392 * vala/valasemanticanalyzer.vala: fix member access to namespaces
2393 * vala/valacodegenerator.vala: adapt to CCodeWriter changes
2394 * ccode/valaccodewriter.vala: don't touch file if nothing has changed,
2395 required to get incremental builds working
2396 * vapi/glib-2.0.vala: extend file functions
2398 * ccode/Makefile.am,vala/Makefile.am,compiler/Makefile.am: support
2401 2006-05-25 Jürg Billeter <j@bitron.ch>
2403 * vala/scanner.l: support ELLIPSIS, use g_strdup instead of strdup
2404 * vala/parser.y: support variable argument lists, type access modifiers
2405 * vala/valareport.vala: class to handle error reporting
2406 * vala/valasymbolbuilder.vala: switch to new error reporting scheme
2407 * vala/valasymbolresolver.vala: switch to new error reporting scheme
2408 * vala/valasemanticanalyzer.vala: process Constant and EnumValue symbol
2409 dependencies, check method argument types, find types of unary and
2410 binary expressions, remove dummy field, switch to new error reporting
2412 * vala/valacodegenerator.vala: support calling functions with variable
2413 argument lists, support break and continue statements, remove dummy fields,
2414 switch to new error reporting scheme
2415 * vala/valainterfacewriter.vala: visitor to write public vala api in one
2417 * vala/valasourcefile.vala: support field and property symbol
2418 dependencies, remove dummy field
2419 * vala/valaclass.vala: add is_abstract field
2420 * vala/valaenumvalue.vala: remove dummy field
2421 * vala/valaformalparameter.vala: add ellipsis property
2422 * vala/valamemberaccessibility.vala: add INTERNAL
2423 * vala/valamethod.vala: make parameters public, remove dummy field
2424 * vala/valaproperty.vala: remove dummy field
2425 * vala/valasymbol.vala: add name field and get_full_name method
2426 * vala/valatype.vala: add access field
2427 * vala/valatypereference.vala: switch to new error reporting scheme
2428 * ccode/valaccodeblock.vala: improve formatting
2429 * ccode/valaccodeifstatement.vala: improve formatting
2430 * ccode/valaccodewriter.vala: improve formatting
2431 * compiler/valacompiler.vala: add error handling, support multiple vapi
2432 directories, add --library option to generate public vala api
2433 * vapi/glib-2.0.vala: moved from bindings, add static GLib.stdout field,
2434 correctly mark functions with variable argument lists, add File.test
2437 * configure.ac,Makefile.am,ccode/Makefile.am,vala/Makefile.am,
2438 vapi/Makefile.am,compiler/Makefile.am: add build system
2440 * remove valac subdirectory: Bootstrap compiler is now obsolete.
2442 2006-05-24 Jürg Billeter <j@bitron.ch>
2444 Compiler is now self-hosting.
2446 * vala/parser.y: support type checks, field attributes, and virtual and
2447 override method modifiers
2448 * vala/valacodevisitor.vala: support type checks
2449 * vala/valasymbolbuilder.vala: correct generated property accessors
2450 * vala/valaattributeprocessor.vala: process field attributes
2451 * vala/valasemanticanalyzer.vala: support virtual methods and type
2453 * vala/valacodegenerator.vala: support properties, private fields,
2454 static fields, virtual methods, field initializers, while statements,
2455 foreach statements, instance last methods, postfix expressions, type
2457 * vala/valaclass.vala: correct source reference, add get_properties
2459 * vala/valafield.vala: visit initializer, support cname attribute
2460 * vala/valamethod.vala: support ReturnsModifiedPointer and InstanceLast
2461 attributes, add is_virtual, is_override, and base_method fields, add
2462 get_real_cname method
2463 * vala/valaproperty.vala: add get_upper_case_cname method
2464 * vala/valastruct.vala: add has_private_fields attribute, add
2466 * vala/valatypecheck.vala
2467 * vala/vala.h: update
2468 * ccode/valaccodebreakstatement.vala
2469 * ccode/valaccodecasestatement.vala
2470 * ccode/valaccodecontinuestatement.vala
2471 * ccode/valaccodedeclaration.vala: renamed from
2472 CCodeDeclarationStatement, support function declarators
2473 * ccode/valaccodedeclarator.vala: abstract base class for variable and
2474 function declarators
2475 * ccode/valaccodefunctiondeclarator.vala:
2476 * ccode/valaccodestruct.vala: support function declarations by adding
2477 add_declaration method
2478 * ccode/valaccodeswitchstatement.vala
2479 * ccode/valaccodeunaryexpression.vala: add postfix increment and
2481 * ccode/valaccodevariabledeclarator.vala: inherit from CCodeDeclarator
2482 * ccode/valaccodewhilestatement.vala
2484 2006-05-23 Jürg Billeter <j@bitron.ch>
2486 * vala/valacodevisitor.vala: support initializer lists
2487 * vala/valacodegenerator.vala: support constant arrays and initializer
2489 * vala/valaconstant.vala: visit initializer
2490 * vala/valainitializerlist.vala: add accept method
2491 * vala/valastruct.vala: visit constants later than fields due to
2492 constant initialization
2493 * vala/valatypereference.vala: add get_const_cname method
2494 * ccode/valaccodeinitializerlist.vala
2496 2006-05-22 Jürg Billeter <j@bitron.ch>
2498 * vala/parser.y: support abstract methods and static fields
2499 * vala/valasourcefile.vala: support parameter symbol dependencies
2500 * vala/valasymbolbuilder.vala: insert default body for get accessors
2501 * vala/valasemanticanalyzer.vala: add property type dependency
2502 * vala/valacodegenerator.vala: add constants, private static fields,
2503 main function, property accessors, this, casting for member access
2504 * vala/valablock.vala: add add_statement method
2505 * vala/valafield.vala: add instance field
2506 * vala/valamethod.vala: add is_abstract field
2507 * valac/generator.c: mark generated properties as writable
2509 2006-05-22 Jürg Billeter <j@bitron.ch>
2511 * vala/valacodegenerator.c: add class instance private struct, type
2512 register function, class init function, instance init function;
2513 support access to private members
2514 * ccode/valaccodedeclarationstatement.vala: support static modifier
2516 2006-05-21 Jürg Billeter <j@bitron.ch>
2518 * vala/scanner.l: support file comments, BREAK, CONTINUE
2519 * vala/parser.y: support break and continue, add more comments
2520 * vala/valacodecontext.vala: find cyclic header dependencies
2521 * vala/valasourcefile.vala: add get_namespaces method, add dependency
2522 information, add add_symbol_dependency method, add
2523 SourceFileDependencyType enum
2524 * vala/valasourcefilecycle.vala
2525 * vala/valacodevisitor.vala: support break and continue statements
2526 * vala/valaparser.vala: support file comments
2527 * vala/valasemanticanalyzer.vala: record dependency information
2528 * vala/valacodegenerator.vala: add include directives, type forward
2529 declarations, once section, enum values, method return types, and more
2531 * vala/valablock.vala, vala/valadeclarationstatement.vala,
2532 vala/valaemptystatement.vala, vala/valaexpressionstatement.vala,
2533 vala/valaforeachstatement.vala, vala/valaforstatement.vala,
2534 vala/valaifstatement.vala, vala/valareturnstatement.vala,
2535 vala/valastatement.vala, vala/valawhilestatement.vala: move
2536 source_reference property to Statement class
2537 * vala/valaclass.vala, vala/valaenum.vala, vala/valastruct.vala,
2538 vala/valatype.vala: move name, source_reference, namespace, and
2539 get_cheader_filenames to Type class
2540 * vala/valabreakstatement.vala
2541 * vala/valacontinuestatement.vala
2542 * vala/valaenum.vala: fix cname, add get_upper_case_cname method
2543 * vala/valaenumvalue.vala: add get_cname method
2544 * vala/valafield.vala: add access field
2545 * vala/valanamespace.vala: add get_structs, get_classes, and
2546 get_cheader_filenames methods, support cheader_filename attribute
2547 * vala/valastruct.vala: support cheader_filename attribute
2548 * vala/valatypereference.vala: support void cname
2549 * vala/vala.h: update
2550 * ccode/valaccodeblock.vala: support comments before statements
2551 * ccode/valaccodeenum.vala: optionally use typedef
2552 * ccode/valaccodefunction.vala: add copy method
2553 * ccode/valaccodenewline.vala
2554 * ccode/valaccodeoncesection.vala
2555 * ccode/valaccodewriter.vala: use whole line for comments
2556 * bindings/glib-2.0.vala: add cheader_filename attributes, extend string
2558 * valac/generator.c: fix private field access, include string.h
2560 2006-05-19 Jürg Billeter <j@bitron.ch>
2562 * vala/valacodegenerator.vala: include header file in corresponding
2563 source file, generate class macros and typedefs
2564 * ccode/valaccodeincludedirective.vala
2565 * ccode/valaccodemacroreplacement.vala: c macro definition
2566 * ccode/valaccodetypedefinition.vala: c typedef
2567 * bindings/glib-2.0.vala: correct comment
2569 2006-05-18 Jürg Billeter <j@bitron.ch>
2571 * vala/valacodecontext.vala: add get_source_files method
2572 * vala/valasourcefile.vala: add pkg flag
2573 * vala/valasymbolresolver.vala: use GLib.Object as default base class
2574 * vala/valacodegenerator.vala: ignore package bindings, fix names of
2576 * bindings/glib-2.0.vala: renamed from GLib.vala, add g_build_filename
2577 * compiler/valacompiler.vala: add pkg and pkgdir options
2579 2006-05-18 Jürg Billeter <j@bitron.ch>
2581 * vala/valacodegenerator.vala: add method parameters, public instance
2582 field access, invocation arguments
2583 * vala/valamethod.vala: add get_parameters method
2584 * ccode/valaccodeformalparameter.vala
2585 * ccode/valaccodefunction.vala: use CCodeFormalParameter
2586 * ccode/valaccodememberaccess.vala
2587 * valac/scanner.l: support ASSIGN_BITWISE_OR, BITWISE_OR
2588 * valac/parser.y: support bitwise or
2589 * valac/context.h: support bitwise or
2590 * valac/generator.c: support bitwise or
2592 2006-05-18 Jürg Billeter <j@bitron.ch>
2594 * vala/parser.y: support member and access modifiers, static methods
2595 * vala/valaattributeprocessor.vala: process method attributes
2596 * vala/valaclass.vala: don't set parent_type member of children
2597 * vala/valaconstant.vala: remove unnecessary parent_type member
2598 * vala/valafield.vala: remove unnecessary parent_type member
2599 * vala/valamethod.vala: support cname attribute
2600 * vala/valanamespace.vala: add methods
2601 * vala/valaproperty.vala: remove unnecessary parent_type member
2602 * vala/valastruct.vala: don't set parent_type member of children
2604 2006-05-18 Jürg Billeter <j@bitron.ch>
2606 * vala/parser.y: adapt to BinaryOperator enum changes
2607 * vala/valacodegenerator.vala: add operators to unary and binary
2609 * vala/valabinaryexpression.vala: correct enum value names
2610 * ccode/valaccodebinaryexpression.vala: add operator
2611 * ccode/valaccodeunaryexpression.vala
2613 2006-05-18 Jürg Billeter <j@bitron.ch>
2615 * vala/parser.y: support namespace attributes
2616 * vala/valaattributeprocessor.vala: process namespace and class
2618 * vala/valacodegenerator.vala: use correct symbol names
2619 * vala/valamethod.vala: add cname
2620 * vala/valanamespace.vala: add cprefix, support cprefix attribute
2621 * vala/valastruct.vala: prefix cname with namespace cprefix
2622 * bindings/GLib.vala: add tolower to unichar
2623 * valac/parser.y: rename namespace attribute cname to lower_case_cprefix
2625 2006-05-18 Jürg Billeter <j@bitron.ch>
2627 * update reference and property annotations
2628 * switch string struct to utf-8
2629 * valac/context.c: set source file in root namespace
2630 * valac/generator.c: don't include bindings stub header
2632 2006-05-17 Jürg Billeter <j@bitron.ch>
2634 * vala/valanamespace.vala: implement camel_case_to_lower_case method
2635 * bindings/GLib.vala: extend string types
2636 * valac/generator.c: support access to struct fields
2638 2006-05-17 Jürg Billeter <j@bitron.ch>
2640 * vala/parser.y: support variable declarators, subtyping, constants,
2641 properties, and enums
2642 * vala/valacodevisitor.vala: support formal parameters, property
2643 accessors, named arguments, and parenthesized expressions
2644 * vala/valasymbolbuilder.vala: visit enum values, constants, formal
2645 parameters, properties, and blocks
2646 * vala/valasymbolresolver.vala: save base class, accept void type,
2647 support type references with namespace name
2648 * vala/valasemanticanalyzer.vala: visitor to find static types of
2650 * vala/valacodegenerator.vala: support parenthesized expressions
2651 * vala/valablock.vala: add begin and end visit events
2652 * vala/valaclass.vala: support base types and properties
2653 * vala/valaenum.vala: add values
2654 * vala/valaenumvalue.vala
2655 * vala/valaexpression.vala: add generic symbol reference
2656 * vala/valaforeachstatement.vala: add begin and end visit events
2657 * vala/valaformalparameter.vala: add visit event
2658 * vala/valaliteral.vala: mark class as abstract
2659 * vala/valamethod.vala: add return_type
2660 * vala/valanamedargument.vala: add accept method
2661 * vala/valanamespace.vala: visit fields
2662 * vala/valaobjectcreationexpression.vala: visit arguments
2663 * vala/valaparenthesizedexpression.vala: add visit event
2664 * vala/valaproperty.vala: add accessors
2665 * vala/valapropertyaccessor.vala
2666 * vala/valasimplename.vala: code style update
2667 * vala/valastruct.vala: add constants
2668 * vala/valavariabledeclarator.vala: add type reference
2669 * vala/vala.h: update
2670 * compiler/valacompiler.vala: invoke SemanticAnalyzer
2671 * ccode/valaccodefragment.vala: code style update
2672 * ccode/valaccodeparenthesizedexpression.vala:
2673 * valac/parser.y: support replacement of readonly fields
2674 * valac/context.c: resolve types in operation expressions
2676 2006-05-16 Jürg Billeter <j@bitron.ch>
2678 * vala/scanner.l: fix multi-line comments
2679 * vala/valacodegenerator.vala: basic statement and expression handling
2680 * vala/valacodevisitor.vala: support variable declaration
2681 * vala/valasymbolbuilder.vala: adapt to visitor changes
2682 * vala/valaclass.vala: remove members already available in Struct
2683 * vala/valacodenode.vala: add ccodenode field
2684 * vala/valadeclarationstatement.vala: visit declaration
2685 * vala/valaexpressionstatement.vala: visit code containers after child
2687 * vala/valalocalvariabledeclaration.vala: add accept method
2688 * vala/valamethod.vala: add begin and end visit events
2689 * vala/valanamespace.vala: add lower_case_cprefix
2690 * vala/valastruct.vala: define get_upper_case_cname method
2691 * vala/valatype.vala: declare get_upper_case_cname method
2692 * vala/valatypereference.vala: add get_upper_case_cname method
2693 * vala/valavariabledeclarator.vala: add accept method
2694 * ccode/valaccodewriter.vala: formatting fixes
2695 * ccode/valaccodeassignment.vala
2696 * ccode/valaccodebinaryexpression.vala
2697 * ccode/valaccodeblock.vala: use CCodeStatement
2698 * ccode/valaccodeconstant.vala
2699 * ccode/valaccodedeclarationstatement.vala
2700 * ccode/valaccodeemptystatement.vala
2701 * ccode/valaccodeexpression.vala
2702 * ccode/valaccodeexpressionstatement.vala
2703 * ccode/valaccodeforstatement.vala
2704 * ccode/valaccodefunction.vala: formatting fixes
2705 * ccode/valaccodefunctioncall.vala
2706 * ccode/valaccodeidentifier.vala
2707 * ccode/valaccodeifstatement.vala
2708 * ccode/valaccodereturnstatement.vala
2709 * ccode/valaccodestatement.vala
2710 * ccode/valaccodestruct.vala: formatting fixes
2711 * ccode/valaccodevariabledeclarator.vala
2712 * bindings/GLib.vala: extend string types
2713 * valac/context.c: resolve types in named argument list in object
2716 2006-05-16 Jürg Billeter <j@bitron.ch>
2718 * vala/parser.y: fix unary expressions
2719 * vala/valacodegenerator.vala: add visit_block method
2720 * vala/valacodevisitor.vala: add visit methods for statements,
2721 expressions, and literals
2722 * vala/valaassignment.vala: add accept method
2723 * vala/valabinaryexpression.vala: add accept method
2724 * vala/valablock.vala: add accept method
2725 * vala/valabooleanliteral.vala: add accept method
2726 * vala/valacastexpression.vala: add accept method
2727 * vala/valacharacterliteral.vala: add accept method
2728 * vala/valaconditionalexpression.vala: add accept method
2729 * vala/valaconstant.vala: visit code containers after child elements
2730 * vala/valadeclarationstatement.vala: add accept method
2731 * vala/valaemptystatement.vala: add accept method
2732 * vala/valaexpressionstatement.vala: add accept method
2733 * vala/valafield.vala: visit code containers after child elements
2734 * vala/valaforeachstatement.vala: add accept method
2735 * vala/valaformalparameter.vala: add accept method
2736 * vala/valaforstatement.vala: add accept method
2737 * vala/valaifstatement.vala: add accept method
2738 * vala/valaintegerliteral.vala: add accept method
2739 * vala/valainvocationexpression.vala: add accept method
2740 * vala/valaliteralexpression.vala: add accept method
2741 * vala/valamemberaccess.vala: add accept method
2742 * vala/valamethod.vala: add accept method
2743 * vala/valanullliteral.vala: add accept method
2744 * vala/valaobjectcreationexpression.vala: add accept method
2745 * vala/valaparenthesizedexpression.vala: add accept method
2746 * vala/valapostfixexpression.vala: add accept method
2747 * vala/valareturnstatement.vala: add accept method
2748 * vala/valasimplename.vala: add accept method
2749 * vala/valastringliteral.vala: add accept method
2750 * vala/valaunaryexpression.vala: fix constructor, add accept method
2751 * vala/valawhilestatement.vala: add accept method
2752 * ccode/valaccodefunction.vala: renamed from CCodeMethod
2754 2006-05-16 Jürg Billeter <j@bitron.ch>
2756 * vala/parser.y: support logical AND and OR expressions, conditional
2757 expressions, assignments, constants, method parameters, and properties
2758 * vala/valacodevisitor.vala: add constant and property visits
2759 * vala/valaassignment.vala
2760 * vala/valabinaryexpression.vala: add bitwise xor, AND, and OR
2761 * vala/valaconditionalexpression.vala
2762 * vala/valaconstant.vala
2763 * vala/valaformalparameter.vala
2764 * vala/valainitializerlist.vala
2765 * vala/valamemberaccess.vala: add source_reference
2766 * vala/valamethod.vala: add parameters
2767 * vala/valaproperty.vala
2768 * vala/vala.h: update
2770 2006-05-16 Jürg Billeter <j@bitron.ch>
2772 * vala/parser.y: support member access, multiplicative, additive, shift,
2773 equality, relational, and bitwise expressions
2774 * vala/valabinaryexpression.vala
2775 * vala/valamemberaccess.vala: add constructor
2776 * vala/vala.h: update
2778 2006-05-15 Jürg Billeter <j@bitron.ch>
2780 * vala/scanner.l: support assign operators
2781 * vala/parser.y: support assign operators and attributes
2782 * vala/valaattributeprocessor.vala: visitor to process compiler
2784 * vala/valacodegenerator.vala: support structs, enums, and methods
2785 * vala/valacodenode.vala: support attributes
2786 * vala/valaattribute.vala
2787 * vala/valamemberaccessibility.vala
2788 * vala/valamethod.vala
2789 * vala/valastruct.vala: support CCode (cname) attribute
2790 * vala/vala.h: update
2791 * compiler/valacompiler.vala: invoke AttributeProcessor
2792 * ccode/valaccodeblock.vala
2793 * ccode/valaccodeenum.vala
2794 * ccode/valaccodemethod.vala
2795 * ccode/valaccodemodifiers.vala
2796 * bindings/GLib.vala: add string cmp method
2797 * valac/scanner.l: support BITWISE_AND
2798 * valac/parser.y: support bitwise and
2799 * valac/context.h: add bitwise and
2800 * valac/generator.c: support enum dependencies and bitwise and
2802 2006-05-14 Jürg Billeter <j@bitron.ch>
2804 * vala/scanner.l: support OPEN_CAST_PARENS, IS, WHILE
2805 * vala/parser.y: support structs, enums, and fields, cast, postfix,
2806 while, ref types, and generic type parameters; fix comments
2807 * vala/valacodecontext.vala: add root symbol
2808 * vala/valasourcefile.vala: add using directives, c filenames
2809 * vala/valacodevisitor.vala: add begin and end visits for some container
2810 types, add struct, enum, field, type parameter, namespace reference,
2811 and type reference visits
2812 * vala/valaparser.vala: adapt to visitor changes
2813 * vala/valasymbolbiulder.vala: visitor to fill symbol table
2814 * vala/valasymbolresolver.vala: visitor to resolve symbol references
2815 * vala/valacodegenerator.vala: add beginning of code generation
2816 * vala/valacodenode.vala: add symbol reference
2817 * vala/valacastexpression.vala
2818 * vala/valaclass.vala: derive from struct
2819 * vala/valaenum.vala
2820 * vala/valaexpression.vala: add static_type, field_reference, and
2821 method_reference fields
2822 * vala/valafield.vala
2823 * vala/valamemberaccess.vala
2824 * vala/valanamespace.vala: add structs, enums, and fields
2825 * vala/valanamespacereference.vala
2826 * vala/valapostfixexpression.vala
2827 * vala/valasourcereference.vala: adapt to comment changes
2828 * vala/valastringliteral.vala: add eval method
2829 * vala/valastruct.vala
2830 * vala/valasymbol.vala
2831 * vala/valatype.vala
2832 * vala/valatypeparameter.vala:
2833 * vala/valatypereference.vala: add type, type_parameter, is_ref, and
2834 is_out fields, add get_cname method
2835 * vala/valavariabledeclarator.vala: add name and initializer fields
2836 * vala/valawhilestatement.vala:
2837 * vala/vala.h: update
2838 * compiler/valacompiler.vala: run SymbolBuilder and SymbolResolver
2839 * ccode/valaccodewriter.vala
2840 * ccode/valaccodecomment.vala
2841 * ccode/valaccodefragment.vala
2842 * ccode/valaccodenode.vala
2843 * ccode/valaccodestruct.vala
2844 * bindings/GLib.vala: add/extend ustring, Path, Object, File, HashTable
2845 * valac/scanner.l: support OPEN_CAST_PARENS, OP_AND, OP_OR, IS, WHILE
2846 * valac/parser.y: support cast, while, include_filename ccode attribute,
2847 AND and OR expressions, IS type checks, unary minus
2848 * valac/context.h: add while statements, cast and IS expressions, and
2849 AND and OR operators
2850 * valac/context.c: support cast, IS, while; fix if
2851 * valac/generator.c: support cast, IS, pointer arithmetic, namespace
2852 methods, imported include files
2853 * valac/driver.c: add symbol alias
2855 2006-05-07 Jürg Billeter <j@bitron.ch>
2857 * vala/scanner.l: tokenizer for new vala compiler
2858 * vala/parser.y: parser vor new vala compiler
2859 * vala/valablock.vala
2860 * vala/valabooleanliteral.vala
2861 * vala/valacharacterliteral.vala
2862 * vala/valaclass.vala: add methods
2863 * vala/valadeclarationstatement.vala
2864 * vala/valaemptystatement.vala
2865 * vala/valaexpression.vala
2866 * vala/valaexpressionstatement.vala
2867 * vala/valaforeachstatement.vala
2868 * vala/valaforstatement.vala
2869 * vala/valaifstatement.vala
2870 * vala/valaintegerliteral.vala
2871 * vala/valainvocationexpression.vala
2872 * vala/valaliteral.vala
2873 * vala/valaliteralexpression.vala
2874 * vala/valalocalvariabledeclaration.vala
2875 * vala/valamethod.vala
2876 * vala/valanamedargument.vala
2877 * vala/valanullliteral.vala
2878 * vala/valaobjectcreationexpression.vala
2879 * vala/valaparenthesizedexpression.vala
2880 * vala/valareturnstatement.vala
2881 * vala/valasimplename.vala
2882 * vala/valastatement.vala
2883 * vala/valastringliteral.vala
2884 * vala/valatypereference.vala
2885 * vala/valaunaryexpression.vala
2886 * vala/valavariabledeclarator.vala
2887 * vala/valacodevisitor.vala: add visit_method skeleton
2888 * vala/valacodegenerator.vala: do.
2889 * vala/vala.h: include generated header files
2890 * valac/generator.c: support bool and enum properties, support enums
2892 2006-05-06 Jürg Billeter <j@bitron.ch>
2894 * vala/valacodecontext.vala
2895 * vala/valasourcefile.vala
2896 * vala/valasourcereference.vala: filename, line, and comment container
2897 * vala/valacodenode.vala: abstract code node
2898 * vala/valanamespace.vala: namespace node
2899 * vala/valaclass.vala: class node
2900 * vala/valacodevisitor.vala: abstract syntax tree visitor
2901 * vala/valaparser.vala: vala parser
2902 * vala/valacodegenerator.vala: code generator skeleton
2903 * compiler/valacompiler.vala: compiler driver
2904 * bindings/GLib.vala: add bindings for GList and GOptionContext
2905 * valac/scanner.l: support multi-line comments, ABSTRACT, INTERFACE,
2907 * valac/parser.y: replace AT by HASH, support readonly fields
2908 * valac/context.h: small fixes
2909 * valac/context.c: small fixes
2910 * valac/generator.c: fix override methods, basic support for properties
2912 2006-05-03 Jürg Billeter <j@bitron.ch>
2914 * valac/scanner.l: support OP_NEG, CONSTRUCT, FOREACH, IN
2915 * valac/parser.y: add foreach, construct properties; merge modifiers to
2916 resolve parser conflicts
2917 * valac/context.h: merge modifiers
2918 * valac/context.c: support namespace fields, resolve types in
2919 assignments, invocations, and if, for, and foreach statements
2920 * valac/generator.c: support negation operator, inherited fields in
2921 object variables, foreach statements for arrays and GList, fix
2922 circular dependencies
2924 2006-05-02 Raffaele Sandrini <rasa@gmx.ch>
2926 * tests/test-008.vala: add tests for base fields
2927 * valac/generator.c: remove klass local variable, add support for
2930 2006-05-01 Jürg Billeter <j@bitron.ch>
2932 * valac/scanner.l: support ENUM, FLAGS, STRUCT
2933 * valac/parser.y: add structs, generic types, enums, flags, attributes,
2934 ref and out parameters
2935 * valac/context.h: add ValaFlags, ValaFlagsValue, and ValaAnnotation
2937 * valac/context.c: support bool, uint, pointer, generic types
2938 * valac/generator.h: save pointer to current struct
2939 * valac/generator.c: support structs, ReturnsModifiedPointer, include
2942 2006-04-30 Jürg Billeter <j@bitron.ch>
2944 * valac/scanner.l: support AT, CONST, VALA_FALSE, VALA_NULL, OUT, REF,
2945 THIS, VALA_TRUE, USING, VAR, LITERAL_CHARACTER
2946 * valac/parser.y: add character, boolean, and null literals, using
2947 directive, @ type qualifier, constants, ref and out variables,
2948 array element access, this access, struct and array initializer,
2950 * valac/context.h: add ValaEnum, ValaConstant, and ValaEnumValue structs
2951 * valac/context.c: support constants, struct members, enums, var type,
2953 * valac/generator.h: save pointer to current class
2954 * valac/generator.c: support constants, boolean and null literals,
2955 array element access, using directives, this access, enums, private
2956 static fields, ref and out variables, struct and array initializer,
2957 boolean, character, and null literal, var type
2959 2006-04-27 Raffaele Sandrini <rasa@gmx.ch>
2961 * tests/test-008.vala:
2962 * tests/test-009.vala: add
2966 * valac/generator.c:
2967 * valac/context.h: add field and property support (property parse only
2969 * AUTHORS: add myself
2971 2006-04-26 Jürg Billeter <j@bitron.ch>
2973 * valac/scanner.l: support OVERRIDE, VIRTUAL
2974 * valac/parser.y: add virtual methods
2975 * valac/context.h: support virtual methods, improve init and class_init
2976 * valac/context.c: set symbol in ValaMethod struct
2977 * valac/generator.c: support virtual methods
2978 * tests/test-007.vala: test virtual method declaration and invocation
2980 2006-04-26 Jürg Billeter <j@bitron.ch>
2982 * valac/scanner.l: support OPEN_BRACKET, CLOSE_BRACKET, OP_INC, OP_DEC,
2983 OP_EQ, OP_NE, OP_LE, OP_GE, OP_LT, OP_GT, MINUS, STAR, DIV, ELSE, FOR,
2985 * valac/parser.y: add array type references, equality expressions,
2986 relational expressions, multiplicative expressions, postfix
2987 operations, object creation, if conditionals, for loops
2988 * valac/context.h: add ValaNamedArgument struct, support if and for
2990 * valac/context.c: resolve types in object creation expressions of
2991 variable initializers
2992 * valac/generator.c: support array type references, init and class_init
2993 methods, more operations, object creation, for loops, if conditionals,
2994 call g_type_init in main
2995 * tests/test-006.vala: test instance method invocation, object creation,
2996 for loop, if conditional, multiplicative expression
2998 2006-04-25 Jürg Billeter <j@bitron.ch>
3000 * valac/parser.y: save cname in class, save location of statements and
3002 * valac/context.h: add ValaStruct struct
3003 * valac/context.c: support symbols from methods and structs, add int
3004 and string fundamental types, resolve types in local variable
3006 * valac/generator.h: save pointer to current method block
3007 * valac/generator.c: add special handling for main method, basic support
3008 for method invocations, literals, member access, simple names,
3009 additive expressions, return statments, blocks
3010 * tests/test-005.vala: test static method invocation, literal integer,
3011 simple name, additive expression, return statement, block, main method
3013 2006-04-24 Jürg Billeter <j@bitron.ch>
3015 * valac/scanner.l: support single-line comments, ASSIGN, PLUS, RETURN,
3016 LITERAL_INTEGER, LITERAL_STRING
3017 * valac/parser.y: add basic statements and expressions
3018 * valac/context.h: add ValaStatement, ValaVariableDeclaration,
3019 ValaVariableDeclarator, and ValaExpression structs
3020 * valac/context.c: remove unreachable line
3022 2006-04-24 Jürg Billeter <j@bitron.ch>
3024 * valac/scanner.l: set token location, support OPEN_PARENS,
3025 CLOSE_PARENS, SEMICOLON, PUBLIC, STATIC
3026 * valac/parser.y: save symbol location, output exact error location,
3027 support method declarations
3028 * valac/context.h: add ValaLocation, ValaMethod, and ValaFormalParameter
3029 structs, add location to ValaClass and ValaTypeReference structs
3030 * valac/context.c: output error location, support method declarations
3031 * valac/generator.c: support method declarations
3032 * valac/driver.c: add comment
3033 * tests/test-004.vala: test method declaration
3035 2006-04-22 Jürg Billeter <j@bitron.ch>
3037 * valac/scanner.l: support DOT, COLON, and COMMA
3038 * valac/parser.y: save lower and upper case cnames in namespace and
3039 class objects, support base classes
3040 * valac/context.h: add ValaSymbol and ValaTypeReference structs, add
3041 cnames to ValaNamespace and ValaClass structs
3042 * valac/context.c: add symbol handling, type resolving, set cnames in
3044 * valac/generator.c: remove cname generation, support base classes
3045 * valac/driver.c: add symbols and resolve types
3046 * tests/test-003.vala: test base class