1 Fri Feb 01 15:18:00 2002 George Lebl <jirka@5z.com>
5 Thu Dec 20 17:43:15 2001 George Lebl <jirka@5z.com>
7 * src/main.c: apply patch from Josh Parsons <jp30@st-andrews.ac.uk>
8 to enhance the m4 support and to add the self_<name> aliases
9 which are used in gob2, so that to ease some porting work.
11 Sat Oct 20 17:02:56 2001 George Lebl <jirka@5z.com>
13 * src/Makefile.am, src/lexer.l, src/main.c: Apply m4 preprocessing
14 patch from Josh Parsons <jp30@st-andrews.ac.uk>
16 Sat Sep 29 16:31:38 2001 George Lebl <jirka@5z.com>
20 Sat Sep 29 16:28:13 2001 George Lebl <jirka@5z.com>
22 * src/util.[ch], src/parse.y: get_cast argument is constant and
23 make sure not to modify the return value.
25 Fri Sep 28 17:10:21 2001 George Lebl <jirka@5z.com>
27 * src/main.c: backport the signal marshaller stuff from gob-2 as
28 that apparently changed in gtk proper recently (marshallers in
29 gtk1 style are no longer supported)
31 Fri Sep 28 15:56:37 2001 George Lebl <jirka@5z.com>
33 * src/parse.y: fix segfaults on export and fix one case where
36 Sat Jun 30 15:39:27 2001 George Lebl <jirka@5z.com>
40 Sat Jun 30 14:57:37 2001 George Lebl <jirka@5z.com>
42 * doc/gob.1.in: add documentation for (export)
44 Tue Jun 26 15:54:08 2001 George Lebl <jirka@5z.com>
46 * src/Makefile.am: add built sources to EXTRA_DIST
48 2001-06-24 Mark Brown <broonie@sirena.org.uk>
50 * src/main.c: Default to PRIVATE_HEADER_ONDEMAND rather than
51 PRIVATE_HEADER_ALWAYS as per documentation.
53 * doc/gob.1.in: Fix cut & paste error in object_{get,set}
56 Sat Jun 09 13:38:53 2001 George Lebl <jirka@5z.com>
58 * src/parse.y: was freeing the wrong token
60 2001-06-03 Eskil Heyn Olsen <eskil@eskil.dk>
63 binged version to 1.0.10 because of the export keyword
65 * examples/my-person.gob:
68 * examples/test-export.gob:
69 File that tests the (export) keyword.
72 Added a (export) keyword to argument, so gob will
73 autodefine the my_object_[get|set]_var functions.
75 Sun May 13 02:33:15 2001 George Lebl <jirka@5z.com>
77 * src/main.c: remove GET_NEW_VARG as it only works in gcc and
80 Sun May 13 02:02:47 2001 George Lebl <jirka@5z.com>
82 * src/util.c: patch from Frederic Crozat <fcrozat@mandrakesoft.com>
85 2001-04-27 Eskil Heyn Olsen <eskil@eazel.com>
87 * src/main.c: (print_class_block):
88 add a GET_NEW_VARG def (ala GET_NEW) which takes
89 ``"...", val'' gtk_object_new args.
91 Sun Apr 22 03:22:48 2001 George Lebl <jirka@5z.com>
93 * doc/makehtml.pl: make output nicer
95 Sun Apr 22 03:03:05 2001 George Lebl <jirka@5z.com>
97 * doc/makehtml.pl, doc/Makefile.am: groff kind of sucks at
98 making html, so this is my own very dumb convertor that probably
99 only properly works on this one man file
101 Sat Apr 21 20:37:40 2001 George Lebl <jirka@5z.com>
105 Sat Apr 21 20:06:10 2001 George Lebl <jirka@5z.com>
107 * examples/Makefile.am, examples/README,
108 examples/GNOME_Foo_SomeInterface.idl,
109 examples/foo-some-interface.gob: Add an example for BonoboXObject
111 Sat Apr 21 19:33:08 2001 George Lebl <jirka@5z.com>
113 * configure.in: Raise version to 1.0.9
115 * src/lexer.l: Properly check major version requirements (majors
116 must match in the requires line)
118 * src/parse.y, src/main.c, src/treefuncs.(def|c|h), src/checks.c:
119 Add direct BonoboXObject support
121 * src/parse.y: fix the chunks usage
123 * doc/gob.1.in: document BonoboXObject stuff, fix the bugs section
124 wrt gtk-doc which has been supported for quite some time
126 Fri Apr 13 21:19:33 2001 George Lebl <jirka@5z.com>
128 * src/parse.y: commited too fast, fix printf warning
130 Fri Apr 13 17:45:14 2001 George Lebl <jirka@5z.com>
132 * src/parse.y, doc/gob.1.in: Fix a problem found by Eric Kidd
133 <eric.kidd@pobox.com>, where objectlink was not completely
134 refcounting safe. Could underref if you set the same object.
136 Thu Apr 12 09:19:58 2001 George Lebl <jirka@5z.com>
140 Sat Mar 31 00:24:58 2001 George Lebl <jirka@5z.com>
142 * src/main.c: fix crash with marshallers of signals with a return
143 type and no arguments.
145 Tue Feb 27 00:53:41 2001 Jonathan Blandford <jrb@redhat.com>
147 * README: Use my new-found maintainer status!!! The power!
149 Sun Feb 25 17:17:46 2001 George Lebl <jirka@5z.com>
153 Sun Feb 25 16:57:45 2001 George Lebl <jirka@5z.com>
155 * src/main.c, src/checks.c: to make doing BonoboXObjects possible
156 allow overriding the _get_type function.
158 * doc/gob.1.in: document the above
160 Sun Feb 11 16:33:07 2001 George Lebl <jirka@5z.com>
164 Sat Feb 10 18:42:59 2001 George Lebl <jirka@5z.com>
166 * src/Makefile.am: fix the build
168 2001-02-08 Maciej Stachowiak <mjs@eazel.com>
170 * src/Makefile.am: Remove BUILT_SOURCES stuff; Automake knows how
171 to handle .l and .y files directly, and including the .c files as
172 well was making it fail to link as it would try to link in lexer.o
175 Thu Feb 08 02:43:22 2001 George Lebl <jirka@5z.com>
177 * src/main.c: add signal connection typesafety macros
179 * src/test.gob, doc/gob.1.in: new stuff foo
181 * configure.in: raise version
183 Thu Feb 08 01:42:52 2001 George Lebl <jirka@5z.com>
185 * src/Makefile.am: rule for parse.h includes parse.c, and
186 SOURCES include BUILT_SOURCES
188 Tue Dec 26 11:03:44 2000 George Lebl <jirka@5z.com>
190 * src/main.c: Remove ## from the varargs macro stuff, as it's not
191 needed and causes trouble for newer gcc's (like in rh7)
193 Sun Sep 10 18:04:07 2000 George Lebl <jirka@5z.com>
197 Fri Sep 01 03:45:30 2000 George Lebl <jirka@5z.com>
199 * src/main.c: add G_GNUC_CONST to the _get_type function
201 Wed Aug 23 15:05:40 2000 George Lebl <jirka@5z.com>
203 * src/main.c: when a method has no arguments make an argumentless
204 macro for the shortform to avoid a parse error
206 * src/test.gob: add a test for the above
208 Sun Aug 6 22:21:38 2000 Eskil Heyn Olsen <eskil@eazel.com>
210 * gob.m4 now defaults to WARN instead of ERROR on missing
213 Tue Jul 25 16:54:34 2000 George Lebl <jirka@5z.com>
217 * configure.in: raise version to 1.0.4
219 * src/main.c: fixup the -anal macro patch.
221 * src/util.[ch], src/main.c: constize (not in 1.0.4)
223 * src/main.c: the short form pointers unified for both gnu and non-gnu
226 Sun Jul 23 18:51:45 2000 George Lebl <jirka@5z.com>
228 * src/util.[ch], src/main.c, src/checks.c, src/lexer.l, src/parse.y:
229 make new cleaner error print routines including a printfstyle one.
230 Use the get_real_id on all method ids even for overrides. When a
231 signal is added there is also a sizeof check for the signature vs.
232 argument list with a g_error if it fails. Fix %at{ %} to not
233 appear twice in all files.
235 * src/main.c: Apply patch from Arturo Tena to make things compile
236 nicely with gcc's -ansi -pedantic
238 * src/out.[ch]: constize correctly and use G_GNUC_PRINTF macro for
241 Fri Jul 21 15:38:10 2000 George Lebl <jirka@5z.com>
243 * src/main.c: store the private structure pointer so that we
244 don't look inside the freed object structureafter finalize
246 Thu Jul 06 02:32:29 2000 George Lebl <jirka@5z.com>
250 Wed Jul 05 19:37:20 2000 George Lebl <jirka@5z.com>
252 * src/{main.c,parse.y}: couple of cleanups, and fixup the gtk 1.3
255 Wed Jul 05 18:57:13 2000 George Lebl <jirka@5z.com>
257 * src/{checks.c, main.c, parse.y, test.gob}: Apply and fix up patch
258 from Bas van der Linden <linden@win.tue.nl> that adds the ability
259 to use const on the "self" argument as well. Also adds a CONST
260 casting macro to use.
262 * src/main.c: Fix a memory leak when destroy wasn't overriden and
263 destructors were added, it now properly calls the parent handler.
266 * src/main.c: Spit out some macro magic foo to hopefully make it
267 possible to compile objects with GTK+ 1.3/2.0
269 * doc/gob.1.in, examples/*.gob: We should never do
270 GTK_OBJECT(GET_NEW) as that's a memory leak due to some weird
271 GTK_OBJECT() semantics
273 Fri Jun 30 14:08:53 2000 George Lebl <jirka@5z.com>
277 Fri Jun 30 13:11:05 2000 George Lebl <jirka@5z.com>
279 * doc/gob.1.in: add doc for --always-private-struct
281 * src/main.c: fix output of --help. Also print __GOB_FUNCTION__
282 for inits and for get/set_arg. And print the get_real_id to
283 avoid the underscore.
285 Mon Jun 26 00:06:45 2000 George Lebl <jirka@5z.com>
287 * src/parse.y: for stringlink, dup the string on argument
290 * doc/gob.1.in: update documentation to the above change
292 Sun Jun 25 03:34:02 2000 George Lebl <jirka@5z.com>
294 * src/treefuncs.def, src/main.c, src/utils.[ch], src/parse.y: sane
295 parsing of const. Get rid of "stars" integer and just use a
296 "pointer" string. Also the types in general are more sanely parsed,
297 thus recognizing hopefully all legal (and some illegal) C types.
299 * src/checks.[ch], src/main.c: checks the argument type to be one we can
302 * src/treefuncs.def, src/main.c, src/parse.y, src/lexer.l: Apply
303 patch from Bas van der Linden <linden@win.tue.nl> that adds the
304 possibility to use chunks to allocate objects.
306 * src/main.c: Apply patch from Bas van der Linden <linden@win.tue.nl>
307 to add a __GOB_FUNCTION__ define to each function
309 * src/Makefile.am, src/main.c, src/lexer.l, src/generate_treefuncs.pl:
310 avoid and fix warnings, and compile with all warnings
312 * src/main.[ch]: add an --always-private-struct option to always put
313 in the private pointer, even if there are no private members.
315 * src/test.gob: add some more tests for new stuff
317 Wed Jun 07 15:03:18 2000 George Lebl <jirka@5z.com>
321 Wed Jun 07 14:41:24 2000 George Lebl <jirka@5z.com>
323 * configure.in, doc/gob.1.in: updates
325 Mon Jun 05 12:10:46 2000 George Lebl <jirka@5z.com>
327 * doc/gob.1.in: run through ispell, and fix option stuff to produce
328 nicer html output with groff
330 Thu Jun 01 18:12:13 2000 George Lebl <jirka@5z.com>
332 * src/main.c: Make the private header switches work again.
334 Wed May 31 01:50:25 2000 George Lebl <jirka@5z.com>
338 Wed May 31 01:47:23 2000 George Lebl <jirka@5z.com>
340 * src/gob.1.in: documentation of makefile rules for gob.
342 Tue May 30 11:02:36 2000 George Lebl <jirka@5z.com>
344 * src/lexer.l: Accept identifiers in array dimensions, this is so
345 that you can make these some constants.
347 Sat May 20 18:22:33 2000 George Lebl <jirka@5z.com>
351 Sat May 20 18:22:23 2000 George Lebl <jirka@5z.com>
353 * src/{main.c,checks.[ch]}: check for duplicate overrides, it is
354 different from checking symbol names as they don't conflict with
355 other symbols AND they only conflict if both the name and their
358 Sat May 20 16:38:06 2000 George Lebl <jirka@5z.com>
360 * src/{main.[ch],util.[ch],checks.c}: Add underscore removal for
361 non-override methods. This means that local aliases will include
362 prepended underscores, but when the full name is generated, or
363 when the method name is added to class structure, the underscore
366 * src/checks.c: overrides no longer checked for uniqueness, a more
367 complex logic is needed.
369 * src/{main.c,treefuncs.def,parse.y}: override naming is done
370 with a unique id, so that we handle cases where two classes have
371 the same method name.
373 * doc/gob.1.in: update for the above.
375 Sat May 20 14:42:00 2000 George Lebl <jirka@5z.com>
377 * src/main.c: the private structure is now freed in finalize again and
378 thus do the same dance around finalize as we do around destroy.
379 Clean up some code. NULL all things being destroyed. The arbitary
380 destructor uses memset as those things might not be just pointers.
382 Thu May 11 23:48:44 2000 George Lebl <jirka@5z.com>
384 * src/main.[ch]: provide the Self and SelfClass typedefs in addition
385 to SELF, IS_SELF, SELF_CLASS macros. All of these can now be
386 disabled with the --no-self-alias option
388 * doc/gob.1.in: update
390 * configure.in: raise version
392 Tue May 09 23:18:16 2000 George Lebl <jirka@5z.com>
394 * src/parse.y: fix segfault on parse error and give better error
397 Tue May 09 21:54:10 2000 George Lebl <jirka@5z.com>
399 * doc/gob.1.in, src/main.c: Add destruction code into the destroy
400 handler rather then finalize. Setup an extra function if
401 neccessary to handle returns correctly as this must be called
404 Sat Apr 29 14:41:42 2000 George Lebl <jirka@5z.com>
408 Sat Apr 29 14:40:40 2000 George Lebl <jirka@5z.com>
410 * src/checks.c: code prettification
412 * src/lexer.l, src/parse.y, src/test.gob: change "class" scope to
413 "classwide" scope, not to overload the class keyword
415 * src/main.[ch]: make private header files be generated by default,
416 and cleanup that part a bit
418 * doc/gob.1.in: add documentation of classwide
422 Fri Apr 21 17:15:09 2000 George Lebl <jirka@5z.com>
424 * src/main.c: add spaces after commas
426 * src/lexer.l, src/main.c, src/parse.y: add class scope variables
427 which are put into the class structure
429 * src/test.gob: added a test for class variables
431 * src/treefuncs.def: added CLASS_SCOPE
433 * src/treefuncs.h: regenerated
435 Mon Apr 17 20:13:47 2000 George Lebl <jirka@5z.com>
437 * src/parse.y: on objectlink instead of just ref, do ref/sink.
439 Sat Apr 15 23:07:30 2000 George Lebl <jirka@5z.com>
443 Sat Apr 15 22:42:20 2000 George Lebl <jirka@5z.com>
445 * src/main.c: fixes for ANSI C and C++. Just use GTK_VALUE_POINTER
446 instead of GTK_VALUE_OBJECT so that we don't have to cast and don't
449 Sat Apr 15 22:09:49 2000 George Lebl <jirka@5z.com>
451 * src/main.c: use the generic return type in signal marshallers
452 rather then the specific one as the marshallers are truly generic
454 Sat Apr 15 21:52:52 2000 George Lebl <jirka@5z.com>
456 * src/main.c: fix some typesafety braindamages with OBJECT types
457 in arguments by casting GTK_VALUE_OBJECT to gpointer. Also
458 for seting arguments cast the ARG to atype if it exists
460 Wed Apr 05 13:42:28 2000 George Lebl <jirka@5z.com>
462 * src/parse.y: never allow NONE to be used as one of many arguments,
463 always only by itself in the argument list
465 * src/main.c: When printing out the signal marshaller prototype,
466 don't print out the NONE (void) into the argument list, thanks
467 to Soeren Sandmann <sandmann@daimi.au.dk> for reporting that
469 Mon Apr 03 13:07:33 2000 George Lebl <jirka@5z.com>
471 * examples/Makefile.am: add my-person2.gob to EXTRA_DIST
473 Sun Apr 02 18:09:40 2000 George Lebl <jirka@5z.com>
477 Sun Apr 02 17:38:12 2000 George Lebl <jirka@5z.com>
479 * src/Makefile.am: ass the .pl and .def file to EXTRA_DIST
481 Sun Apr 2 14:37:49 PDT 2000 Manish Singh <yosh@gimp.org>
483 * configure.in: check for treefuncs.h instead of tree.h, since
484 the latter has gone bye-bye
486 Sat Apr 01 23:27:47 2000 George Lebl <jirka@5z.com>
488 * doc/gob.1.in: add documentation for defreturn
490 Sat Apr 01 18:03:31 2000 George Lebl <jirka@5z.com>
492 * src/{treefuncs.(def|c|h),generate_treefuncs.pl}: What would gob
493 be without some automatically generated code. The tree.[ch] was
494 hard to keep up and didn't have free/copy so these do, otherwise
495 it is the same. Also added a defreturn field to methods
497 * src/*.[cyl]: include treefuncs.h rather then tree.h
499 * src/{parse.y,lexer.l,main.c}: use the defreturn as the default for
500 return values of signals and virtual methods. If this is not
501 defined use the onerror or failing that '0'. onerror is also not
502 a reserved keyword anymore
504 * configure.in: raise version
506 Mon Mar 27 13:08:01 2000 George Lebl <jirka@5z.com>
510 Mon Mar 27 12:04:22 2000 George Lebl <jirka@5z.com>
512 * src/util.[ch], src/main.c: figure out if we really need the special
513 types, also make a hash for the gtk types instead of linear
514 searching it all the time.
516 * src/{lexer.c,checks.c,main.c}: minor fixes and cleanups
518 2000-03-21 Eskil Heyn Olsen <deity@eskil.dk>
520 * gob.m4: do not default GOB to no when not found (did that make
522 And better error message.
524 Mon Mar 20 14:35:35 2000 George Lebl <jirka@5z.com>
526 * src/lexer.l: handle single word typenames with an empty namespace
528 Sun Mar 05 02:23:04 2000 George Lebl <jirka@5z.com>
530 * src/main.c: add #lines around setting default handlers
532 * src/parse.y: fix line number for 'destroywith' destructors
534 Sat Mar 04 15:33:18 2000 George Lebl <jirka@5z.com>
536 * src/checks.c: duplicate name test for arguments and signals is
537 case insensitive now as those could cause trouble
539 Mon Feb 28 02:45:27 2000 George Lebl <jirka@5z.com>
543 Sun Feb 27 20:59:45 2000 George Lebl <jirka@5z.com>
545 * src/parse.y,doc/gob.1.in: For stringlink, just return a pointer on
546 get rather then strduping as that is 1) consistent with objectlink
547 and 2) more flexible.
549 Sun Feb 27 20:38:19 2000 George Lebl <jirka@5z.com>
551 * src/{main.c,tree.[ch],parse.y}: add the arbitrary destruction handler
554 * doc/gob.1.in: updated and fixed up
556 * configure.in,NEWS,examples/{README,my-person2.gob}: change version
559 Sun Feb 27 18:37:57 2000 George Lebl <jirka@5z.com>
561 * NEWS,doc/gob.1.in,examples/{README,my-person.gob,my-person2.gob}:
562 update of docs and examples to include the new features and minor
565 Sun Feb 27 04:41:41 2000 George Lebl <jirka@5z.com>
567 * src/main.c: make the output nicer for classes with no methods
568 better typechecking in get/set_arg, fix a couple of C++ issues,
570 * src/{main.c,parse.y,tree.[ch]}: automatic linking of arguments to
571 data members. Also alow empty statements inside a class. Also
572 add automatic data member destruction for pointer data, and
573 automatic initialization for any data member.
575 * src/main.[ch],src/out.c: add --no-lines which inhibits printing
576 of #line things to output files
578 * doc/gob.1.in: update for the above
580 Fri Feb 25 15:21:47 2000 George Lebl <jirka@5z.com>
584 Fri Feb 25 14:46:51 2000 George Lebl <jirka@5z.com>
586 * src/main.c: add SELF casting macros
588 * doc/gob.1.in: document the above
590 Fri Feb 25 02:29:26 2000 George Lebl <jirka@5z.com>
592 * src/main.c,src/tree.[ch],src/parse.y: public signals get
593 GTK_RUN_ACTION added. Plus an interface for adding additional
596 * doc/gob.1.in: add docs for the above
598 Fri Feb 25 01:37:20 2000 George Lebl <jirka@5z.com>
600 * src/main.c: fix trailing comma on the end of the argument enum
602 Sun Feb 13 23:54:53 2000 George Lebl <jirka@5z.com>
604 * doc/gob.1.in: add doc patch from Dave Dunkin <dunkind@letu.edu>
606 * doc/gob.1.in,examples/*.gob: use init(self) to be more consistent
609 Sat Feb 12 14:42:15 2000 George Lebl <jirka@5z.com>
611 * src/main.c,src/lexer.l: apply patches from Dave Dunkin
612 <dunkind@letu.edu> to add all and alltop ccode sections
613 and to add a --no-write,-n option to not actually write
614 any files. Also did some very cosmetic changes to code
616 Mon Feb 07 23:45:04 2000 George Lebl <jirka@5z.com>
618 * src/main.c: use the magic /*< private >*/ and /*< public >*/
619 comments to distinguish public and protected data members
621 Mon Feb 07 03:02:48 2000 George Lebl <jirka@5z.com>
625 Mon Feb 07 02:50:11 2000 George Lebl <jirka@5z.com>
627 * src/lexer.l: error on multiple classes
629 * src/main.c: nicer header output
631 * src/{lexer.l,main.c}: Eat out gtk-doc like inline doc entries
632 and stuff them into the output files where appropriate
634 * doc/gob.1.in: added docs for gtk-doc like inline doc stuff
636 * examples/{README, gtk-button-count.gob}: added inline docs
638 Fri Feb 04 01:07:54 2000 George Lebl <jirka@5z.com>
640 * src/main.c: use G_GNUC_UNUSED rather then our own macro for a
641 very slightly cleaner looking output file
643 2000-01-31 Eskil Heyn Olsen <deity@eskil.dk>
645 * gob.m4: checks for gob binary, GOB_CHECK([version [,
646 action_if_found[, action_if_not_found]]]).
648 * Makefile.am: Install gob in $prefix/share/aclocal
650 Thu Jan 27 17:50:11 2000 George Lebl <jirka@5z.com>
652 * src/main.c: add #include <stdlib.h>
654 Mon Jan 24 22:52:47 2000 George Lebl <jirka@5z.com>
658 Mon Jan 24 22:23:47 2000 George Lebl <jirka@5z.com>
660 * src/main.c: add a protecting define before the object typedef
662 * doc/gob.1.in: add docs for the new stuff
664 Sun Jan 23 16:19:54 2000 George Lebl <jirka@5z.com>
666 * src/{lexer.l,parse.y,tree.[ch],main.c}: make more types of header
667 %{ %} blocks, "headertop" and "privateheader" and made short as
668 well as long names possible.
670 * src/main.c: add an --no-extern-c option to not put entern "C" into
671 the output, which is now put in by default even if --for-cpp is
672 on so that it is possible to call those from C by default
674 Thu Jan 20 01:50:45 2000 George Lebl <jirka@5z.com>
676 * src/main.c: put the _real_ functions in our normal private
677 namespace of ___* to be more consistent.
679 Mon Jan 10 00:16:43 2000 George Lebl <jirka@5z.com>
681 * src/{main.[ch],util.[ch],checks.[ch]}: offload some functionality to
684 * src/main.c: cleanup the generation routine by spliting it up into
687 * src/{main.h,lexer.l,parse.y,out.c}: put some needed externs into the
688 main.h file and include that rather then doing it in the .c files
690 Thu Jan 06 18:33:44 2000 George Lebl <jirka@5z.com>
692 * src/main.c: use ___ for the signal marshalling typedefs as well
694 Thu Jan 06 17:32:46 2000 George Lebl <jirka@5z.com>
698 Thu Jan 06 17:13:22 2000 George Lebl <jirka@5z.com>
700 * src/main.c: be consistent with the use of "namespacing", we
701 prefix ALL internal gob stuff with "___". This should make it
702 easier to avoid name conflicts with user code and glibc/gcc (Which
703 seems to use __ prefix)
705 * src/main.c: check for init and class_init names for non-constructor
706 methods and give an error if found.
708 * src/main.c: check argument types and flags for correctness, error
709 on unknown type, but just a warning on unknown flag
711 * doc/gob.1.in: add a section for name conflicts
713 Wed Jan 05 02:23:21 2000 George Lebl <jirka@5z.com>
715 * src/main.c: doh! the symbols for the aliases need to be declared as
718 Wed Jan 05 02:13:59 2000 George Lebl <jirka@5z.com>
720 * src/main.c: just realized that args... for macros is a GNU
721 extention and so the PARENT_HANDLER no longer uses it, but prints
722 the argument names with __ prefixed into the argument list.
724 Wed Jan 05 01:58:32 2000 George Lebl <jirka@5z.com>
726 * src/main.c: if using gnu c, also define macros using varargs for
727 function aliases. This should allow the compiler to optimize
728 further and if we have arguments for the defines there are
729 no adverse side effects as there are for straight defines.
731 Wed Jan 05 01:48:12 2000 George Lebl <jirka@5z.com>
733 * src/main.c: fixup the aliases. They didn't actually work right.
734 now we set it up as a const pointer to a function using typeof.
736 Tue Jan 04 17:57:55 2000 George Lebl <jirka@5z.com>
738 * src/lexer.l: add support for 'requires x.y.z' line. This is
739 so that a .gob file can require at least version x.y.z of gob
741 * src/test.gob: update
743 * doc/gob.1.in: update for requires and run trhough ispell
745 Tue Jan 04 17:10:54 2000 George Lebl <jirka@5z.com>
747 * src/main.c: fix the non-gnu aliases
749 Tue Jan 04 16:46:16 2000 George Lebl <jirka@5z.com>
751 * src/{main.c,parser.y,tree.[ch]}: add optional C type specification
752 to arguments for full type safety
754 * doc/gob.1.in: updated
756 Tue Jan 04 15:34:16 2000 George Lebl <jirka@5z.com>
758 * src/main.c: --no-gnu option to completely disable any use
759 of GNU C extentions. This is for those weird people that don't
760 wish to use those extentions even with GNU C.
762 Tue Jan 04 14:43:49 2000 George Lebl <jirka@5z.com>
764 * src/main.c: use some GNU extentions (guarded with #ifdef __GNUC__)
765 to make arguments fully typesafe, and to make it easier for
766 GNU to optimize the aliases, as well as to avoid the ugly
769 * src/main.c: don't put #line 0 for the .gob file for method prototypes
771 * src/main.c: move the _priv structure freeing into finalize to enable
772 people to work with the private stuff inside the destroy handler
774 * src/main.c: use #line before every precondition check so that failed
775 checks should point to the function prototype rather then into
778 * src/main.c: remove the _END_ARG macro
780 * src/main.c: add GOB_VERSION_MAJOR, GOB_VERSION_MINOR and
781 GOB_VERSION_PATCHLEVEL defines into the generated C file
783 * src/out.c: don't redundantly put #line for outfile if we're already
786 * configure.in: raise version number
788 Tue Jan 04 02:22:33 2000 George Lebl <jirka@5z.com>
790 * src/main.c: add argument wrapper macros to make the argument system
791 a little more type safe.
793 Fri Dec 31 17:39:22 1999 George Lebl <jirka@5z.com>
797 Thu Dec 30 20:20:36 1999 George Lebl <jirka@5z.com>
799 * src/main.c: correctly handle the complex fundemental types,
800 so that we can handle ALL the fundemental types for signals
802 Thu Dec 30 19:29:56 1999 George Lebl <jirka@5z.com>
804 * src/main.c: don't use function types for casts in marshallers,
805 but default types we get from our GTK_TYPE_* -> C type translation,
806 and use this fact to check for same function types and combine
807 signal prototypes. This doesn't yet handle well complex types,
808 but I have an idea how to make complex types work. Though
809 I dunno if it's actually worth it.
811 Thu Dec 30 17:18:27 1999 George Lebl <jirka@5z.com>
813 * src/main.c: figure out some types from GTK types and cast properly
814 when emitting a signal. This catches some inconsistencies in
815 signal func argument lists and the GTK types of the arguments.
817 Wed Dec 29 18:04:13 1999 George Lebl <jirka@5z.com>
819 * src/parse.y: allow scope, public/private/protected, to come before
820 the signal or virtual keyword for consistency's sake.
822 Wed Dec 29 01:39:30 1999 George Lebl <jirka@5z.com>
824 * src/{tree.[ch],parser.y}: cleanup scope stuff
826 * src/{lexer.l,parser.y,tree.h,main.c}: add protected keyword and
827 methods. protected methods are put into the -private files and
828 are real exported functions just like public. protected data
829 members act like pre-0.91.x private datamembers, that is they
830 get stuck into the public header, but marked /* protected */.
832 * src/main.c: change the method body printing function so that we
833 can catch the no return warning properly and send us to the .gob
834 file instead of the .c file.
836 * src/{parse.y,main.c}: handle empty publics/privates/overrides
837 and handle the body being set to ';' rather then '{}'
839 * src/main.c: check for empty nonvoid regular methods, and error out
840 on finding them as that would produce warnings which we can't catch
841 and it is generally bad to do anyway
843 * src/{parse.y,tree.[ch],main.c}: use char pointers for C buffers,
844 and kill leading/trailing whitespace from them to make the C files
845 nicer and easier to recognize empty functions.
847 * src/main.c: add a --version switch
849 * doc/gob.1.in: Update with the above changes
851 * configure.in: raise version
853 Tue Dec 28 20:49:56 1999 George Lebl <jirka@5z.com>
855 * src/main.c: apply patch from ChiDeok Hwang <cdhwang@sr.hei.co.kr>
856 to make the hack function static so that we don't pollute namespace
858 Mon Dec 27 19:56:24 1999 George Lebl <jirka@5z.com>
862 Mon Dec 27 03:00:25 1999 George Lebl <jirka@5z.com>
864 * src/main.c: fixup PARENT_HANDLER to work well with non-void
865 functions, the macro becomes an expression if the function is
866 not void and returns the return of the parent or the onerror
867 expression if the function pointer was NULL.
869 Mon Dec 27 02:25:32 1999 George Lebl <jirka@5z.com>
871 * src/parse.y: allow completely empty classes
873 * src/main.c: don't add the ugly hack function if there are no
876 Mon Dec 27 01:26:26 1999 George Lebl <jirka@5z.com>
878 * src/parse.y: fixup the virtual rule as I forgot to shift the
879 argument numbers when adding to the expression
881 Mon Dec 27 01:07:14 1999 George Lebl <jirka@5z.com>
883 * src/parse.y: add optional public keyword to virtuals and signals,
884 (which doesn't do anything, only consistency). I should perhaps
885 rewrite and simplify this part of the parser
887 * src/lexer.l: fix a bug with empty braces producing a segfault
888 on public and private methods
890 * doc/gob.1.in: add a section about Constructor methods (init
891 class_init) and fix init_class -> class_init
893 * configure.in: raise version to 0.91.2
895 Tue Dec 14 00:06:00 1999 George Lebl <jirka@5z.com>
899 Mon Dec 13 23:25:06 1999 George Lebl <jirka@5z.com>
901 * src/{main.c,out.c}: create a private header file and stick
902 the private structure definition inside it. Add option
903 --no-private-header for 0.91.0 behaviour and
904 --always-private-header to force private header creation
906 * doc/gob.1.in: update WRT above changes
908 * examples/my-person.gob: include the private header
912 Mon Dec 13 18:30:09 1999 George Lebl <jirka@5z.com>
914 * src/main.c: don't print spurious #line's into the private
917 * src/{main.c,tree.[ch],lexer.l,parse.y}: implement support for
918 array types for data members and function arguments
920 Mon Dec 13 00:48:47 1999 George Lebl <jirka@5z.com>
924 Sun Dec 12 22:55:12 1999 George Lebl <jirka@5z.com>
926 * doc/gob.1.in: added paragraph noting that private data members
927 cannot be accessed above the class definition in the .gob file
929 Sun Dec 12 22:08:31 1999 George Lebl <jirka@5z.com>
931 * src/main.c: implement real private data members as promised in
932 the documentation, this however breaks some compatiblity with
933 things that already used the 'private' keyword for data members
935 * doc/gob.1.in: document private data member stuff
939 * src/main.c: a couple of sanity checks of the code to prevent weird
940 errors on some broken .gob code
942 * configure.in: update version to 0.91.0
944 Sun Dec 05 14:20:26 1999 George Lebl <jirka@5z.com>
946 * src/{lexer.l,main.c}: if we find the class header #include
947 statement in a %{ %} section above class definition, don't
948 include it ourselves.
950 * doc/gob.1.in: remove the note about the include always first from
951 BUGS, and make a new section for the include file.
953 Thu Nov 25 13:09:08 1999 George Lebl <jirka@5z.com>
957 Thu Nov 25 13:00:52 1999 George Lebl <jirka@5z.com>
959 * src/main.c: don't error out on a symbol conflict if the types of
960 the symbol node don't match (variable,method)
962 Sat Nov 20 16:15:42 1999 George Lebl <jirka@5z.com>
964 * src/main.c: add PARENT_HANDLER macro to make calling parent
965 handlers in override functions easier
967 Fri Nov 19 16:41:09 1999 George Lebl <jirka@5z.com>
969 * src/main.c: add a type macro
971 Thu Nov 18 22:56:09 1999 George Lebl <jirka@5z.com>
973 * src/parse.y: add a warning check if the number of GTK types of
974 a signal doesn't seem to be correct for the given number of
977 Tue Nov 16 01:23:45 1999 George Lebl <jirka@5z.com>
979 * src/main.c: support a "no-touch-headers" mode in which the
980 headers are not touched unless they actually really changed,
981 not on by default as it confuses automake
983 Tue Nov 16 00:36:42 1999 George Lebl <jirka@5z.com>
985 * src/{main.c,lexer.l,parser.y,out.c}: Implement a C++ mode, get
986 rid of C++ errors/warnings when in C++ mode, and get rid of
987 the 'this' pointer finally (it's been deprecated long enough)
989 Mon Nov 15 23:45:37 1999 George Lebl <jirka@5z.com>
991 * src/main.c: add prototype for the really bad hack function to
994 Mon Nov 15 23:42:06 1999 George Lebl <jirka@5z.com>
996 * src/main.c: generate correct function pointers in the structure
997 for signals and virtuals. Also use a much nicer system instead
998 of the method name defines, we now just set a bunch of static
999 pointers, this removes a whole lot of headaches actually
1001 * doc/gob.1.in: repair to reflect the above (I removed the define
1004 Sun Nov 14 17:57:34 1999 George Lebl <jirka@5z.com>
1006 * doc/gob.1.in: repair some things that confused troff and add
1007 a C preprocessor warning to BUGS
1009 Sat Nov 13 17:22:49 1999 George Lebl <jirka@5z.com>
1011 * **/Makefile.am, configure.in: fix the conditional installation
1012 stuff, don't even go into the doc directory if we aren't installing
1014 Sat Nov 13 16:53:20 1999 George Lebl <jirka@5z.com>
1016 * doc/gob.1.in: describe BUGS better
1018 Sat Nov 13 16:20:41 1999 George Lebl <jirka@5z.com>
1020 * src/lexer.l: don't kill C++ style comments from C blocks
1022 Sat Nov 13 16:16:59 1999 George Lebl <jirka@5z.com>
1024 * src/{lexer.l,main.c,out.c}: fixed spurious newline printing, don't
1025 kill comments from C blocks so that line counts are right, accept
1026 newlines in strings, and don't take \'\"\' as a string delimiter
1028 Sat Nov 13 14:53:26 1999 George Lebl <jirka@5z.com>
1030 * src/main.c: don't add gtk_object_class to class_init if we only
1031 have non-GtkObject overrides to avoid warning
1033 Sat Nov 13 14:31:25 1999 George Lebl <jirka@5z.com>
1035 * configure.in,src/Makefile.am,doc/Makefile.am: check for
1036 ../NOINST_GOB and in case it's found don't install self
1038 Fri Nov 12 16:25:35 1999 George Lebl <jirka@5z.com>
1040 * configure.in,Makefile.am,src/main.c: don't use popt, our arguments
1041 are simple enough and popt doesn't seem to be widely used yet
1043 Sun Sep 05 22:08:40 1999 George Lebl <jirka@5z.com>
1047 Sun Sep 05 22:08:33 1999 George Lebl <jirka@5z.com>
1049 * doc/gob.1.in: updated for private virtual and signal wrappers
1051 Sun Sep 05 21:50:19 1999 George Lebl <jirka@5z.com>
1053 * configure.in: raise version and actually set POPT_LIB correctly
1055 * src/Makefile.am: use POPT_LIB
1057 Sun Sep 05 21:45:54 1999 George Lebl <jirka@5z.com>
1059 * src/tree.h,src/main.c,src/parse.y: add support for private signals
1062 * src/parse.y: fix bug with bogus vararg methods
1064 Sun Sep 04 17:44:37 1999 George Lebl <jirka@5z.com>
1068 Sat Sep 04 17:18:22 1999 George Lebl <jirka@5z.com>
1070 * src/lexer.l,src/parse.y,src/main.c,src/tree.[ch]: support
1071 variable arguments for public and private methods
1073 Sat Sep 04 16:51:11 1999 George Lebl <jirka@5z.com>
1075 * lexer.l,parse.y: accept const in parameter lists
1077 Sun Aug 29 13:46:33 1999 George Lebl <jirka@5z.com>
1081 Sat Aug 28 23:36:48 1999 George Lebl <jirka@5z.com>
1083 * src/main.[ch],parse.y: make error/warning reporting public
1084 and use it to report depreciated use of 'this'
1086 Sat Aug 28 22:41:52 1999 George Lebl <jirka@5z.com>
1088 * src/tree.[ch],parse.y,main.c: check for duplicate variables and
1089 signals and arguments as well.
1091 Sat Aug 28 22:00:19 1999 George Lebl <jirka@5z.com>
1093 * src/parse.y,src/main.c: change "this" to "self", but accept "this"
1096 * src/main.c: check for duplicate methods, and warn on non-public
1099 * configure.in: change to version 0.90.0
1101 * doc/gob.1.in: change this to self
1103 Tue Aug 24 20:37:26 1999 George Lebl <jirka@5z.com>
1107 Thu Aug 19 03:18:03 1999 George Lebl <jirka@5z.com>
1109 * src/main.c: also count overrides to avoid an unused variable on
1112 Thu Aug 19 03:08:49 1999 George Lebl <jirka@5z.com>
1114 * src/parse.y: in a check, we can check not only about numbers
1115 but for tokens as well
1117 Wed Aug 18 12:54:17 1999 George Lebl <jirka@5z.com>
1121 Tue Aug 17 22:24:47 1999 George Lebl <jirka@5z.com>
1123 * src/lexer.l,src/parse.y: don't use reserved words for check type
1126 * src/{lexer.l,parse.y,tree.[ch],main.c}: add #line's to output
1129 * src/out.[ch]: new functions for output so that we can easily add
1132 * src/main.c: fix get/set arguments
1134 * doc/gob.1.in: updated for newer version and spellchecked, also
1135 gob.1 is generated by configure now to get versions correct
1137 * gob.spec.in: added a spec file
1139 Fri Jul 30 02:19:05 1999 George Lebl <jirka@5z.com>
1141 * src/parse.y: accept simple char types
1143 * src/main.c: make prototypes look better, and don't output arg stuff
1144 when it won't be used
1146 * Makefile,src/Makefile: add test make target