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