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