]> git.draconx.ca Git - gob-dx.git/blob - ChangeLog
Release 1.0.4
[gob-dx.git] / ChangeLog
1 Sun Jul 23 18:51:45 2000  George Lebl <jirka@5z.com>
2
3         * src/util.[ch], src/main.c, src/checks.c, src/lexer.l, src/parse.y:
4           make new cleaner error print routines including a printfstyle one.
5           Use the get_real_id on all method ids even for overrides.  When a
6           signal is added there is also a sizeof check for the signature vs.
7           argument list with a g_error if it fails.  Fix %at{ %} to not
8           appear twice in all files.
9
10         * src/main.c: Apply patch from Arturo Tena to make things compile
11           nicely with gcc's -ansi -pedantic
12
13         * src/out.[ch]: constize correctly and use G_GNUC_PRINTF macro for
14           warnings.
15
16 Fri Jul 21 15:38:10 2000  George Lebl <jirka@5z.com>
17
18         * src/main.c: store the private structure pointer so that we
19           don't look inside the freed object structureafter finalize
20
21 Thu Jul 06 02:32:29 2000  George Lebl <jirka@5z.com>
22
23         * Release 1.0.3
24
25 Wed Jul 05 19:37:20 2000  George Lebl <jirka@5z.com>
26
27         * src/{main.c,parse.y}: couple of cleanups, and fixup the gtk 1.3
28           support
29
30 Wed Jul 05 18:57:13 2000  George Lebl <jirka@5z.com>
31
32         * src/{checks.c, main.c, parse.y, test.gob}:  Apply and fix up patch
33           from Bas van der Linden <linden@win.tue.nl> that adds the ability
34           to use const on the "self" argument as well.  Also adds a CONST
35           casting macro to use.
36
37         * src/main.c: Fix a memory leak when destroy wasn't overriden and
38           destructors were added, it now properly calls the parent handler.
39           Same with finalize.
40
41         * src/main.c: Spit out some macro magic foo to hopefully make it
42           possible to compile objects with GTK+ 1.3/2.0
43
44         * doc/gob.1.in, examples/*.gob:  We should never do
45           GTK_OBJECT(GET_NEW) as that's a memory leak due to some weird
46           GTK_OBJECT() semantics
47
48 Fri Jun 30 14:08:53 2000  George Lebl <jirka@5z.com>
49
50         * Release 1.0.2
51
52 Fri Jun 30 13:11:05 2000  George Lebl <jirka@5z.com>
53
54         * doc/gob.1.in: add doc for --always-private-struct
55
56         * src/main.c: fix output of --help.  Also print __GOB_FUNCTION__
57           for inits and for get/set_arg.  And print the get_real_id to
58           avoid the underscore.
59
60 Mon Jun 26 00:06:45 2000  George Lebl <jirka@5z.com>
61
62         * src/parse.y: for stringlink, dup the string on argument
63           getting
64
65         * doc/gob.1.in: update documentation to the above change
66
67 Sun Jun 25 03:34:02 2000  George Lebl <jirka@5z.com>
68
69         * src/treefuncs.def, src/main.c, src/utils.[ch], src/parse.y: sane
70           parsing of const.  Get rid of "stars" integer and just use a
71           "pointer" string.  Also the types in general are more sanely parsed,
72           thus recognizing hopefully all legal (and some illegal) C types.
73
74         * src/checks.[ch], src/main.c: checks the argument type to be one we can
75           truly check.
76
77         * src/treefuncs.def, src/main.c, src/parse.y, src/lexer.l:  Apply
78           patch from Bas van der Linden <linden@win.tue.nl> that adds the
79           possibility to use chunks to allocate objects.
80
81         * src/main.c: Apply patch from Bas van der Linden <linden@win.tue.nl>
82           to add a __GOB_FUNCTION__ define to each function
83
84         * src/Makefile.am, src/main.c, src/lexer.l, src/generate_treefuncs.pl:
85           avoid and fix warnings, and compile with all warnings
86
87         * src/main.[ch]: add an --always-private-struct option to always put
88           in the private pointer, even if there are no private members.
89
90         * src/test.gob: add some more tests for new stuff
91
92 Wed Jun 07 15:03:18 2000  George Lebl <jirka@5z.com>
93
94         * Release 1.0.1
95
96 Wed Jun 07 14:41:24 2000  George Lebl <jirka@5z.com>
97
98         * configure.in, doc/gob.1.in: updates
99
100 Mon Jun 05 12:10:46 2000  George Lebl <jirka@5z.com>
101
102         * doc/gob.1.in: run through ispell, and fix option stuff to produce
103           nicer html output with groff
104
105 Thu Jun 01 18:12:13 2000  George Lebl <jirka@5z.com>
106
107         * src/main.c: Make the private header switches work again.
108
109 Wed May 31 01:50:25 2000  George Lebl <jirka@5z.com>
110
111         * Release 1.0.0
112
113 Wed May 31 01:47:23 2000  George Lebl <jirka@5z.com>
114
115         * src/gob.1.in: documentation of makefile rules for gob.
116
117 Tue May 30 11:02:36 2000  George Lebl <jirka@5z.com>
118
119         * src/lexer.l: Accept identifiers in array dimensions, this is so
120           that you can make these some constants.
121
122 Sat May 20 18:22:33 2000  George Lebl <jirka@5z.com>
123
124         * Release 0.93.5
125
126 Sat May 20 18:22:23 2000  George Lebl <jirka@5z.com>
127
128         * src/{main.c,checks.[ch]}: check for duplicate overrides, it is
129           different from checking symbol names as they don't conflict with
130           other symbols AND they only conflict if both the name and their
131           type match
132
133 Sat May 20 16:38:06 2000  George Lebl <jirka@5z.com>
134
135         * src/{main.[ch],util.[ch],checks.c}: Add underscore removal for
136           non-override methods.  This means that local aliases will include
137           prepended underscores, but when the full name is generated, or
138           when the method name is added to class structure, the underscore
139           is removed.
140
141         * src/checks.c: overrides no longer checked for uniqueness, a more
142           complex logic is needed.
143
144         * src/{main.c,treefuncs.def,parse.y}:  override naming is done
145           with a unique id, so that we handle cases where two classes have
146           the same method name.
147
148         * doc/gob.1.in: update for the above.
149
150 Sat May 20 14:42:00 2000  George Lebl <jirka@5z.com>
151
152         * src/main.c: the private structure is now freed in finalize again and
153           thus do the same dance around finalize as we do around destroy. 
154           Clean up some code.  NULL all things being destroyed.  The arbitary
155           destructor uses memset as those things might not be just pointers.
156
157 Thu May 11 23:48:44 2000  George Lebl <jirka@5z.com>
158
159         * src/main.[ch]: provide the Self and SelfClass typedefs in addition
160           to SELF, IS_SELF, SELF_CLASS macros.  All of these can now be
161           disabled with the --no-self-alias option
162
163         * doc/gob.1.in: update
164
165         * configure.in: raise version
166
167 Tue May 09 23:18:16 2000  George Lebl <jirka@5z.com>
168
169         * src/parse.y: fix segfault on parse error and give better error
170           message
171
172 Tue May 09 21:54:10 2000  George Lebl <jirka@5z.com>
173
174         * doc/gob.1.in, src/main.c:  Add destruction code into the destroy
175           handler rather then finalize.  Setup an extra function if
176           neccessary to handle returns correctly as this must be called
177           after any user code.
178
179 Sat Apr 29 14:41:42 2000  George Lebl <jirka@5z.com>
180
181         * Release 0.93.4
182
183 Sat Apr 29 14:40:40 2000  George Lebl <jirka@5z.com>
184
185         * src/checks.c: code prettification
186
187         * src/lexer.l, src/parse.y, src/test.gob: change "class" scope to
188           "classwide" scope, not to overload the class keyword
189
190         * src/main.[ch]: make private header files be generated by default,
191           and cleanup that part a bit
192
193         * doc/gob.1.in: add documentation of classwide
194
195         * NEWS:
196
197 Fri Apr 21 17:15:09 2000  George Lebl <jirka@5z.com>
198
199         * src/main.c: add spaces after commas
200
201         * src/lexer.l, src/main.c, src/parse.y: add class scope variables
202           which are put into the class structure
203
204         * src/test.gob: added a test for class variables
205
206         * src/treefuncs.def: added CLASS_SCOPE
207
208         * src/treefuncs.h: regenerated
209
210 Mon Apr 17 20:13:47 2000  George Lebl <jirka@5z.com>
211
212         * src/parse.y: on objectlink instead of just ref, do ref/sink.
213
214 Sat Apr 15 23:07:30 2000  George Lebl <jirka@5z.com>
215
216         * Release 0.93.3
217
218 Sat Apr 15 22:42:20 2000  George Lebl <jirka@5z.com>
219
220         * src/main.c: fixes for ANSI C and C++.  Just use GTK_VALUE_POINTER
221           instead of GTK_VALUE_OBJECT so that we don't have to cast and don't
222           cast lvalues.
223
224 Sat Apr 15 22:09:49 2000  George Lebl <jirka@5z.com>
225
226         * src/main.c: use the generic return type in signal marshallers
227           rather then the specific one as the marshallers are truly generic
228
229 Sat Apr 15 21:52:52 2000  George Lebl <jirka@5z.com>
230
231         * src/main.c: fix some typesafety braindamages with OBJECT types
232           in arguments by casting GTK_VALUE_OBJECT to gpointer.  Also
233           for seting arguments cast the ARG to atype if it exists
234
235 Wed Apr 05 13:42:28 2000  George Lebl <jirka@5z.com>
236
237         * src/parse.y: never allow NONE to be used as one of many arguments,
238           always only by itself in the argument list
239
240         * src/main.c: When printing out the signal marshaller prototype,
241           don't print out the NONE (void) into the argument list, thanks
242           to Soeren Sandmann <sandmann@daimi.au.dk> for reporting that
243
244 Mon Apr 03 13:07:33 2000  George Lebl <jirka@5z.com>
245
246         * examples/Makefile.am: add my-person2.gob to EXTRA_DIST
247
248 Sun Apr 02 18:09:40 2000  George Lebl <jirka@5z.com>
249
250         * Release 0.93.2
251
252 Sun Apr 02 17:38:12 2000  George Lebl <jirka@5z.com>
253
254         * src/Makefile.am: ass the .pl and .def file to EXTRA_DIST
255
256 Sun Apr  2 14:37:49 PDT 2000 Manish Singh <yosh@gimp.org>
257
258         * configure.in: check for treefuncs.h instead of tree.h, since
259           the latter has gone bye-bye
260
261 Sat Apr 01 23:27:47 2000  George Lebl <jirka@5z.com>
262
263         * doc/gob.1.in: add documentation for defreturn
264
265 Sat Apr 01 18:03:31 2000  George Lebl <jirka@5z.com>
266
267         * src/{treefuncs.(def|c|h),generate_treefuncs.pl}: What would gob
268           be without some automatically generated code.  The tree.[ch] was
269           hard to keep up and didn't have free/copy so these do, otherwise
270           it is the same.  Also added a defreturn field to methods
271
272         * src/*.[cyl]: include treefuncs.h rather then tree.h
273
274         * src/{parse.y,lexer.l,main.c}: use the defreturn as the default for
275           return values of signals and virtual methods.  If this is not
276           defined use the onerror or failing that '0'.  onerror is also not
277           a reserved keyword anymore
278         
279         * configure.in: raise version
280
281 Mon Mar 27 13:08:01 2000  George Lebl <jirka@5z.com>
282
283         * Release 0.93.1
284
285 Mon Mar 27 12:04:22 2000  George Lebl <jirka@5z.com>
286
287         * src/util.[ch], src/main.c: figure out if we really need the special
288           types, also make a hash for the gtk types instead of linear
289           searching it all the time.
290
291         * src/{lexer.c,checks.c,main.c}: minor fixes and cleanups
292
293 2000-03-21  Eskil Heyn Olsen  <deity@eskil.dk>
294
295         * gob.m4: do not default GOB to no when not found (did that make
296         sense ?)
297         And better error message.
298
299 Mon Mar 20 14:35:35 2000  George Lebl <jirka@5z.com>
300
301         * src/lexer.l: handle single word typenames with an empty namespace
302
303 Sun Mar 05 02:23:04 2000  George Lebl <jirka@5z.com>
304
305         * src/main.c: add #lines around setting default handlers
306
307         * src/parse.y: fix line number for 'destroywith' destructors
308
309 Sat Mar 04 15:33:18 2000  George Lebl <jirka@5z.com>
310
311         * src/checks.c: duplicate name test for arguments and signals is
312           case insensitive now as those could cause trouble
313
314 Mon Feb 28 02:45:27 2000  George Lebl <jirka@5z.com>
315
316         * Release 0.93.0
317
318 Sun Feb 27 20:59:45 2000  George Lebl <jirka@5z.com>
319
320         * src/parse.y,doc/gob.1.in: For stringlink, just return a pointer on
321           get rather then strduping as that is 1) consistent with objectlink
322           and 2) more flexible.
323
324 Sun Feb 27 20:38:19 2000  George Lebl <jirka@5z.com>
325
326         * src/{main.c,tree.[ch],parse.y}: add the arbitrary destruction handler
327           for data members
328
329         * doc/gob.1.in: updated and fixed up
330
331         * configure.in,NEWS,examples/{README,my-person2.gob}: change version
332           to 0.93.0
333
334 Sun Feb 27 18:37:57 2000  George Lebl <jirka@5z.com>
335
336         * NEWS,doc/gob.1.in,examples/{README,my-person.gob,my-person2.gob}:
337           update of docs and examples to include the new features and minor
338           fixups
339
340 Sun Feb 27 04:41:41 2000  George Lebl <jirka@5z.com>
341
342         * src/main.c: make the output nicer for classes with no methods
343           better typechecking in get/set_arg, fix a couple of C++ issues,
344
345         * src/{main.c,parse.y,tree.[ch]}: automatic linking of arguments to
346           data members.  Also alow empty statements inside a class.  Also
347           add automatic data member destruction for pointer data, and
348           automatic initialization for any data member.
349
350         * src/main.[ch],src/out.c: add --no-lines which inhibits printing
351           of #line things to output files
352
353         * doc/gob.1.in: update for the above
354
355 Fri Feb 25 15:21:47 2000  George Lebl <jirka@5z.com>
356
357         * Release 0.92.4
358
359 Fri Feb 25 14:46:51 2000  George Lebl <jirka@5z.com>
360
361         * src/main.c: add SELF casting macros
362
363         * doc/gob.1.in: document the above
364
365 Fri Feb 25 02:29:26 2000  George Lebl <jirka@5z.com>
366
367         * src/main.c,src/tree.[ch],src/parse.y: public signals get
368           GTK_RUN_ACTION added.  Plus an interface for adding additional
369           flags is added.
370
371         * doc/gob.1.in: add docs for the above
372
373 Fri Feb 25 01:37:20 2000  George Lebl <jirka@5z.com>
374
375         * src/main.c: fix trailing comma on the end of the argument enum
376
377 Sun Feb 13 23:54:53 2000  George Lebl <jirka@5z.com>
378
379         * doc/gob.1.in: add doc patch from Dave Dunkin <dunkind@letu.edu>
380
381         * doc/gob.1.in,examples/*.gob: use init(self) to be more consistent
382           in naming
383
384 Sat Feb 12 14:42:15 2000  George Lebl <jirka@5z.com>
385
386         * src/main.c,src/lexer.l: apply patches from Dave Dunkin
387           <dunkind@letu.edu> to add all and alltop ccode sections
388           and to add a --no-write,-n option to not actually write
389           any files.  Also did some very cosmetic changes to code
390
391 Mon Feb 07 23:45:04 2000  George Lebl <jirka@5z.com>
392
393         * src/main.c: use the magic /*< private >*/ and /*< public >*/
394           comments to distinguish public and protected data members
395
396 Mon Feb 07 03:02:48 2000  George Lebl <jirka@5z.com>
397
398         * Release 0.92.3
399
400 Mon Feb 07 02:50:11 2000  George Lebl <jirka@5z.com>
401
402         * src/lexer.l: error on multiple classes
403
404         * src/main.c: nicer header output
405
406         * src/{lexer.l,main.c}: Eat out gtk-doc like inline doc entries
407           and stuff them into the output files where appropriate
408
409         * doc/gob.1.in: added docs for gtk-doc like inline doc stuff
410
411         * examples/{README, gtk-button-count.gob}: added inline docs
412
413 Fri Feb 04 01:07:54 2000  George Lebl <jirka@5z.com>
414
415         * src/main.c: use G_GNUC_UNUSED rather then our own macro for a
416           very slightly cleaner looking output file
417
418 2000-01-31  Eskil Heyn Olsen  <deity@eskil.dk>
419
420         * gob.m4: checks for gob binary, GOB_CHECK([version [,
421         action_if_found[, action_if_not_found]]]).  
422
423         * Makefile.am: Install gob in $prefix/share/aclocal
424
425 Thu Jan 27 17:50:11 2000  George Lebl <jirka@5z.com>
426
427         * src/main.c: add #include <stdlib.h>
428
429 Mon Jan 24 22:52:47 2000  George Lebl <jirka@5z.com>
430
431         * Release 0.92.2
432
433 Mon Jan 24 22:23:47 2000  George Lebl <jirka@5z.com>
434
435         * src/main.c: add a protecting define before the object typedef
436
437         * doc/gob.1.in: add docs for the new stuff
438
439 Sun Jan 23 16:19:54 2000  George Lebl <jirka@5z.com>
440
441         * src/{lexer.l,parse.y,tree.[ch],main.c}: make more types of header
442           %{ %} blocks, "headertop" and "privateheader" and made short as
443           well as long names possible.
444
445         * src/main.c: add an --no-extern-c option to not put entern "C" into
446           the output, which is now put in by default even if --for-cpp is
447           on so that it is possible to call those from C by default
448
449 Thu Jan 20 01:50:45 2000  George Lebl <jirka@5z.com>
450
451         * src/main.c: put the _real_ functions in our normal private
452           namespace of ___* to be more consistent.
453
454 Mon Jan 10 00:16:43 2000  George Lebl <jirka@5z.com>
455
456         * src/{main.[ch],util.[ch],checks.[ch]}: offload some functionality to
457           extra files
458
459         * src/main.c: cleanup the generation routine by spliting it up into
460           more functions
461           
462         * src/{main.h,lexer.l,parse.y,out.c}: put some needed externs into the
463           main.h file and include that rather then doing it in the .c files
464
465 Thu Jan 06 18:33:44 2000  George Lebl <jirka@5z.com>
466
467         * src/main.c: use ___ for the signal marshalling typedefs as well
468
469 Thu Jan 06 17:32:46 2000  George Lebl <jirka@5z.com>
470
471         * Release 0.92.1
472
473 Thu Jan 06 17:13:22 2000  George Lebl <jirka@5z.com>
474
475         * src/main.c: be consistent with the use of "namespacing", we
476           prefix ALL internal gob stuff with "___".  This should make it
477           easier to avoid name conflicts with user code and glibc/gcc (Which
478           seems to use __ prefix)
479
480         * src/main.c: check for init and class_init names for non-constructor
481           methods and give an error if found.
482
483         * src/main.c: check argument types and flags for correctness, error
484           on unknown type, but just a warning on unknown flag
485
486         * doc/gob.1.in: add a section for name conflicts
487
488 Wed Jan 05 02:23:21 2000  George Lebl <jirka@5z.com>
489
490         * src/main.c: doh! the symbols for the aliases need to be declared as
491           static.
492
493 Wed Jan 05 02:13:59 2000  George Lebl <jirka@5z.com>
494
495         * src/main.c: just realized that args... for macros is a GNU
496           extention and so the PARENT_HANDLER no longer uses it, but prints
497           the argument names with __ prefixed into the argument list.
498
499 Wed Jan 05 01:58:32 2000  George Lebl <jirka@5z.com>
500
501         * src/main.c: if using gnu c, also define macros using varargs for
502           function aliases.  This should allow the compiler to optimize
503           further and if we have arguments for the defines there are
504           no adverse side effects as there are for straight defines.
505
506 Wed Jan 05 01:48:12 2000  George Lebl <jirka@5z.com>
507
508         * src/main.c: fixup the aliases.  They didn't actually work right.
509           now we set it up as a const pointer to a function using typeof.
510
511 Tue Jan 04 17:57:55 2000  George Lebl <jirka@5z.com>
512
513         * src/lexer.l: add support for 'requires x.y.z' line.  This is
514           so that a .gob file can require at least version x.y.z of gob
515
516         * src/test.gob: update
517
518         * doc/gob.1.in: update for requires and run trhough ispell
519
520 Tue Jan 04 17:10:54 2000  George Lebl <jirka@5z.com>
521
522         * src/main.c: fix the non-gnu aliases
523
524 Tue Jan 04 16:46:16 2000  George Lebl <jirka@5z.com>
525
526         * src/{main.c,parser.y,tree.[ch]}: add optional C type specification
527           to arguments for full type safety 
528
529         * doc/gob.1.in: updated
530
531 Tue Jan 04 15:34:16 2000  George Lebl <jirka@5z.com>
532
533         * src/main.c: --no-gnu option to completely disable any use
534           of GNU C extentions.  This is for those weird people that don't
535           wish to use those extentions even with GNU C.
536
537 Tue Jan 04 14:43:49 2000  George Lebl <jirka@5z.com>
538
539         * src/main.c: use some GNU extentions (guarded with #ifdef __GNUC__)
540           to make arguments fully typesafe, and to make it easier for
541           GNU to optimize the aliases, as well as to avoid the ugly
542           hack on GNU C.
543
544         * src/main.c: don't put #line 0 for the .gob file for method prototypes
545
546         * src/main.c: move the _priv structure freeing into finalize to enable
547           people to work with the private stuff inside the destroy handler
548
549         * src/main.c: use #line before every precondition check so that failed
550           checks should point to the function prototype rather then into
551           generated file.
552
553         * src/main.c: remove the _END_ARG macro
554
555         * src/main.c: add GOB_VERSION_MAJOR, GOB_VERSION_MINOR and
556           GOB_VERSION_PATCHLEVEL defines into the generated C file
557
558         * src/out.c: don't redundantly put #line for outfile if we're already
559           in the outfile
560
561         * configure.in: raise version number
562
563 Tue Jan 04 02:22:33 2000  George Lebl <jirka@5z.com>
564
565         * src/main.c: add argument wrapper macros to make the argument system
566           a little more type safe.
567
568 Fri Dec 31 17:39:22 1999  George Lebl <jirka@5z.com>
569
570         * Release 0.92.0
571
572 Thu Dec 30 20:20:36 1999  George Lebl <jirka@5z.com>
573
574         * src/main.c: correctly handle the complex fundemental types,
575           so that we can handle ALL the fundemental types for signals
576
577 Thu Dec 30 19:29:56 1999  George Lebl <jirka@5z.com>
578
579         * src/main.c: don't use function types for casts in marshallers,
580           but default types we get from our GTK_TYPE_* -> C type translation,
581           and use this fact to check for same function types and combine
582           signal prototypes.  This doesn't yet handle well complex types,
583           but I have an idea how to make complex types work.  Though
584           I dunno if it's actually worth it.
585
586 Thu Dec 30 17:18:27 1999  George Lebl <jirka@5z.com>
587
588         * src/main.c: figure out some types from GTK types and cast properly
589           when emitting a signal.  This catches some inconsistencies in
590           signal func argument lists and the GTK types of the arguments.
591
592 Wed Dec 29 18:04:13 1999  George Lebl <jirka@5z.com>
593
594         * src/parse.y: allow scope, public/private/protected, to come before
595           the signal or virtual keyword for consistency's sake.
596
597 Wed Dec 29 01:39:30 1999  George Lebl <jirka@5z.com>
598
599         * src/{tree.[ch],parser.y}: cleanup scope stuff
600
601         * src/{lexer.l,parser.y,tree.h,main.c}: add protected keyword and
602           methods.  protected methods are put into the -private files and
603           are real exported functions just like public.  protected data
604           members act like pre-0.91.x private datamembers, that is they
605           get stuck into the public header, but marked /* protected */.
606
607         * src/main.c: change the method body printing function so that we
608           can catch the no return warning properly and send us to the .gob
609           file instead of the .c file.
610
611         * src/{parse.y,main.c}: handle empty publics/privates/overrides
612           and handle the body being set to ';' rather then '{}'
613
614         * src/main.c: check for empty nonvoid regular methods, and error out
615           on finding them as that would produce warnings which we can't catch
616           and it is generally bad to do anyway
617
618         * src/{parse.y,tree.[ch],main.c}: use char pointers for C buffers,
619           and kill leading/trailing whitespace from them to make the C files
620           nicer and easier to recognize empty functions.
621
622         * src/main.c: add a --version switch
623
624         * doc/gob.1.in: Update with the above changes
625
626         * configure.in: raise version
627
628 Tue Dec 28 20:49:56 1999  George Lebl <jirka@5z.com>
629
630         * src/main.c: apply patch from ChiDeok Hwang <cdhwang@sr.hei.co.kr>
631           to make the hack function static so that we don't pollute namespace
632
633 Mon Dec 27 19:56:24 1999  George Lebl <jirka@5z.com>
634
635         * Release 0.91.2
636
637 Mon Dec 27 03:00:25 1999  George Lebl <jirka@5z.com>
638
639         * src/main.c: fixup PARENT_HANDLER to work well with non-void
640           functions, the macro becomes an expression if the function is
641           not void and returns the return of the parent or the onerror
642           expression if the function pointer was NULL.
643
644 Mon Dec 27 02:25:32 1999  George Lebl <jirka@5z.com>
645
646         * src/parse.y: allow completely empty classes
647
648         * src/main.c: don't add the ugly hack function if there are no
649           methods
650
651 Mon Dec 27 01:26:26 1999  George Lebl <jirka@5z.com>
652
653         * src/parse.y: fixup the virtual rule as I forgot to shift the
654           argument numbers when adding to the expression
655
656 Mon Dec 27 01:07:14 1999  George Lebl <jirka@5z.com>
657
658         * src/parse.y: add optional public keyword to virtuals and signals,
659           (which doesn't do anything, only consistency). I should perhaps
660           rewrite and simplify this part of the parser
661
662         * src/lexer.l: fix a bug with empty braces producing a segfault
663           on public and private methods
664
665         * doc/gob.1.in: add a section about Constructor methods (init
666           class_init) and fix init_class -> class_init
667
668         * configure.in: raise version to 0.91.2
669
670 Tue Dec 14 00:06:00 1999  George Lebl <jirka@5z.com>
671
672         * Release 0.91.1
673
674 Mon Dec 13 23:25:06 1999  George Lebl <jirka@5z.com>
675
676         * src/{main.c,out.c}: create a private header file and stick
677           the private structure definition inside it.  Add option
678           --no-private-header for 0.91.0 behaviour and
679           --always-private-header to force private header creation
680
681         * doc/gob.1.in: update WRT above changes
682
683         * examples/my-person.gob: include the private header
684
685         * NEWS: update
686
687 Mon Dec 13 18:30:09 1999  George Lebl <jirka@5z.com>
688
689         * src/main.c: don't print spurious #line's into the private
690           structure
691
692         * src/{main.c,tree.[ch],lexer.l,parse.y}: implement support for 
693           array types for data members and function arguments
694
695 Mon Dec 13 00:48:47 1999  George Lebl <jirka@5z.com>
696
697         * Release 0.91.0
698
699 Sun Dec 12 22:55:12 1999  George Lebl <jirka@5z.com>
700
701         * doc/gob.1.in: added paragraph noting that private data members
702           cannot be accessed above the class definition in the .gob file
703
704 Sun Dec 12 22:08:31 1999  George Lebl <jirka@5z.com>
705
706         * src/main.c: implement real private data members as promised in
707           the documentation, this however breaks some compatiblity with
708           things that already used the 'private' keyword for data members
709
710         * doc/gob.1.in: document private data member stuff
711
712         * NEWS: update
713
714         * src/main.c: a couple of sanity checks of the code to prevent weird
715           errors on some broken .gob code
716
717         * configure.in: update version to 0.91.0
718
719 Sun Dec 05 14:20:26 1999  George Lebl <jirka@5z.com>
720
721         * src/{lexer.l,main.c}: if we find the class header #include
722           statement in a %{ %} section above class definition, don't
723           include it ourselves.
724
725         * doc/gob.1.in: remove the note about the include always first from
726           BUGS, and make a new section for the include file.
727
728 Thu Nov 25 13:09:08 1999  George Lebl <jirka@5z.com>
729
730         * Release 0.90.5
731
732 Thu Nov 25 13:00:52 1999  George Lebl <jirka@5z.com>
733
734         * src/main.c: don't error out on a symbol conflict if the types of
735           the symbol node don't match (variable,method)
736
737 Sat Nov 20 16:15:42 1999  George Lebl <jirka@5z.com>
738
739         * src/main.c: add PARENT_HANDLER macro to make calling parent
740           handlers in override functions easier
741
742 Fri Nov 19 16:41:09 1999  George Lebl <jirka@5z.com>
743
744         * src/main.c: add a type macro
745
746 Thu Nov 18 22:56:09 1999  George Lebl <jirka@5z.com>
747
748         * src/parse.y: add a warning check if the number of GTK types of
749           a signal doesn't seem to be correct for the given number of
750           function arguments
751
752 Tue Nov 16 01:23:45 1999  George Lebl <jirka@5z.com>
753
754         * src/main.c: support a "no-touch-headers" mode in which the
755           headers are not touched unless they actually really changed,
756           not on by default as it confuses automake
757
758 Tue Nov 16 00:36:42 1999  George Lebl <jirka@5z.com>
759
760         * src/{main.c,lexer.l,parser.y,out.c}: Implement a C++ mode, get
761           rid of C++ errors/warnings when in C++ mode, and get rid of
762           the 'this' pointer finally (it's been deprecated long enough)
763
764 Mon Nov 15 23:45:37 1999  George Lebl <jirka@5z.com>
765
766         * src/main.c: add prototype for the really bad hack function to
767           avoid warning
768
769 Mon Nov 15 23:42:06 1999  George Lebl <jirka@5z.com>
770
771         * src/main.c: generate correct function pointers in the structure
772           for signals and virtuals.  Also use a much nicer system instead
773           of the method name defines, we now just set a bunch of static
774           pointers, this removes a whole lot of headaches actually
775
776         * doc/gob.1.in: repair to reflect the above (I removed the define
777           BUGS paragraph)
778
779 Sun Nov 14 17:57:34 1999  George Lebl <jirka@5z.com>
780
781         * doc/gob.1.in: repair some things that confused troff and add
782           a C preprocessor warning to BUGS
783
784 Sat Nov 13 17:22:49 1999  George Lebl <jirka@5z.com>
785
786         * **/Makefile.am, configure.in: fix the conditional installation
787           stuff, don't even go into the doc directory if we aren't installing
788
789 Sat Nov 13 16:53:20 1999  George Lebl <jirka@5z.com>
790
791         * doc/gob.1.in: describe BUGS better
792
793 Sat Nov 13 16:20:41 1999  George Lebl <jirka@5z.com>
794
795         * src/lexer.l: don't kill C++ style comments from C blocks
796
797 Sat Nov 13 16:16:59 1999  George Lebl <jirka@5z.com>
798
799         * src/{lexer.l,main.c,out.c}: fixed spurious newline printing, don't
800           kill comments from C blocks so that line counts are right, accept
801           newlines in strings, and don't take \'\"\' as a string delimiter
802
803 Sat Nov 13 14:53:26 1999  George Lebl <jirka@5z.com>
804
805         * src/main.c: don't add gtk_object_class to class_init if we only
806           have non-GtkObject overrides to avoid warning
807
808 Sat Nov 13 14:31:25 1999  George Lebl <jirka@5z.com>
809
810         * configure.in,src/Makefile.am,doc/Makefile.am: check for
811           ../NOINST_GOB and in case it's found don't install self
812
813 Fri Nov 12 16:25:35 1999  George Lebl <jirka@5z.com>
814
815         * configure.in,Makefile.am,src/main.c: don't use popt, our arguments
816           are simple enough and popt doesn't seem to be widely used yet
817
818 Sun Sep 05 22:08:40 1999  George Lebl  <jirka@5z.com>
819
820         * Release 0.90.2
821
822 Sun Sep 05 22:08:33 1999  George Lebl  <jirka@5z.com>
823
824         * doc/gob.1.in: updated for private virtual and signal wrappers
825
826 Sun Sep 05 21:50:19 1999  George Lebl  <jirka@5z.com>
827
828         * configure.in: raise version and actually set POPT_LIB correctly
829
830         * src/Makefile.am: use POPT_LIB
831
832 Sun Sep 05 21:45:54 1999  George Lebl  <jirka@5z.com>
833
834         * src/tree.h,src/main.c,src/parse.y: add support for private signals
835           and virtuals
836
837         * src/parse.y: fix bug with bogus vararg methods
838
839 Sun Sep 04 17:44:37 1999  George Lebl  <jirka@5z.com>
840
841         * Release 0.90.1
842
843 Sat Sep 04 17:18:22 1999  George Lebl  <jirka@5z.com>
844
845         * src/lexer.l,src/parse.y,src/main.c,src/tree.[ch]: support
846           variable arguments for public and private methods
847
848 Sat Sep 04 16:51:11 1999  George Lebl  <jirka@5z.com>
849
850         * lexer.l,parse.y: accept const in parameter lists
851
852 Sun Aug 29 13:46:33 1999  George Lebl  <jirka@5z.com>
853
854         * Release 0.90.0
855
856 Sat Aug 28 23:36:48 1999  George Lebl  <jirka@5z.com>
857
858         * src/main.[ch],parse.y: make error/warning reporting public
859           and use it to report depreciated use of 'this'
860
861 Sat Aug 28 22:41:52 1999  George Lebl  <jirka@5z.com>
862
863         * src/tree.[ch],parse.y,main.c: check for duplicate variables and
864           signals and arguments as well.
865
866 Sat Aug 28 22:00:19 1999  George Lebl  <jirka@5z.com>
867
868         * src/parse.y,src/main.c: change "this" to "self", but accept "this"
869           as well
870
871         * src/main.c: check for duplicate methods, and warn on non-public
872           "new" method
873
874         * configure.in: change to version 0.90.0
875
876         * doc/gob.1.in: change this to self
877
878 Tue Aug 24 20:37:26 1999  George Lebl  <jirka@5z.com>
879
880         * Release 0.0.4
881
882 Thu Aug 19 03:18:03 1999  George Lebl  <jirka@5z.com>
883
884         * src/main.c: also count overrides to avoid an unused variable on
885           class_init
886
887 Thu Aug 19 03:08:49 1999  George Lebl  <jirka@5z.com>
888
889         * src/parse.y: in a check, we can check not only about numbers
890           but for tokens as well
891
892 Wed Aug 18 12:54:17 1999  George Lebl  <jirka@5z.com>
893
894         * Release 0.0.3
895
896 Tue Aug 17 22:24:47 1999  George Lebl  <jirka@5z.com>
897
898         * src/lexer.l,src/parse.y: don't use reserved words for check type
899           last first and null
900
901         * src/{lexer.l,parse.y,tree.[ch],main.c}: add #line's to output
902           files
903
904         * src/out.[ch]: new functions for output so that we can easily add
905           #line's to files
906
907         * src/main.c: fix get/set arguments
908
909         * doc/gob.1.in: updated for newer version and spellchecked, also
910           gob.1 is generated by configure now to get versions correct
911
912         * gob.spec.in: added a spec file
913
914 Fri Jul 30 02:19:05 1999  George Lebl  <jirka@5z.com>
915
916         * src/parse.y: accept simple char types
917
918         * src/main.c: make prototypes look better, and don't output arg stuff
919           when it won't be used
920
921         * Makefile,src/Makefile: add test make target
922