1 Tue Dec 18 21:13:09 2012 Jiri (George) Lebl <jirka@5z.com>
5 Tue Dec 18 21:08:09 2012 Jiri (George) Lebl <jirka@5z.com>
7 * src/main.c: print unreftors and destructors before calling dispose
8 or finalize as is the proper ordering. Thanks to Dmitri Toubelis
11 Tue Dec 18 20:55:58 2012 Jiri (George) Lebl <jirka@5z.com>
13 * src/main.c: apply patch from Nick Bowler to not output
14 line 0 statements for private functions that don't appear
17 Sun Jul 15 06:21:55 2012 Jiri (George) Lebl <jirka@5z.com>
19 * src/main.c, src/out.c: Fix for empty file separator. Thanks to
20 H.-J. Schnitzer for pointing it out.
22 * src/lexer.l: add yywrap returning 1 as the default should
23 not sure why I don't have -lfl working here.
25 Thu Jan 06 11:30:03 2011 Jiri (George) Lebl <jirka@5z.com>
29 Mon Jan 03 13:53:58 2011 Jiri (George) Lebl <jirka@5z.com>
31 * src/main.c, src/lexer.l, src/parse.y, src/treefuncs.def: Add
32 %ct{ %ctop{ which is like alltop but only for the C file.
34 * src/test.gob: add test
36 * doc/gob2.1.in: document
38 * configure.in: bump version
40 Sat Oct 09 12:20:06 2010 Jiri (George) Lebl <jirka@5z.com>
42 * configure.in, src/Makefile.am: fixup some brokeneness, Thanks to
43 Roland Clobus for sending a patch to make Cygwin build work
45 Tue Jun 01 02:33:02 2010 Jiri (George) Lebl <jirka@5z.com>
47 * doc/gob2.1.in, src/main.c, gob2.m4: Apply patches sent by
48 Stephen Kitt. Fixes some typos, gob2.m4 exits if gob is not found
49 (fixes ubuntu #317801), and escape minus signs in the man page.
51 * README: generated code is public domain as COPYING.generated-code
54 Fri Apr 02 14:57:20 2010 Jiri (George) Lebl <jirka@5z.com>
56 * src/main.c: Mention WFP in the help message
60 Mon Mar 29 22:24:29 2010 Jiri (George) Lebl <jirka@5z.com>
62 * src/lexer.l: deal with \r in the input files
64 * src/parse.y: Fix segfaults when defining
65 constructor/finalize/dispose using the new interface from
66 last version. Should fix debian bug #574542
68 * src/main.c: Use -G_MAXDOUBLE instead of G_MINDOUBLE and -G_MAXFLOAT
69 instead of G_MINFLOAT. That's the correct smallest value. Thanks
70 to Marcel Wagner wagmarcel at web dot de
72 Wed Dec 23 14:02:11 2009 Jiri (George) Lebl <jirka@5z.com>
74 * src/util.c: fix remove_sep to avoid strcpy problems. Patch from
77 Tue Jul 21 10:20:58 2009 Jiri (George) Lebl <jirka@5z.com>
81 Fri Jul 10 14:34:38 2009 Jiri (George) Lebl <jirka@5z.com>
83 * configure.in: raise version
85 * src/Makefile.am: fixup for new files
87 * src/main.c, src/parse.y, src/lexer.l, src/test.gob: Apply patch by
88 Jean-Yves Lefort to add %afterdecls{ %} code handling
90 * doc/gob2.1.in: document
92 Fri Jul 10 14:18:44 2009 Jiri (George) Lebl <jirka@5z.com>
94 * src/main.c, src/parse.y, doc/gob2.1.in, src/treefuncs.def,
95 src/test.gob: Apply and somewhat rework
96 the patch by Jean-Yves Lefort jylefort at brutele dot be to
97 handle finalize, dispose, constructor just as init and
98 class_init are handled.
100 Fri Jul 10 12:23:39 2009 Jiri (George) Lebl <jirka@5z.com>
102 * src/main.c: add G_GNUC_CONST to _get_type, thanks to
103 Jean-Yves Lefort jylefort at brutele dot be for pointing that
106 * src/main.c: move #line sections past the opening brace of
107 functions, enclose function declarations in #line sections
108 to refer to the .gob file. by Jean-Yves Lefort
110 * src/main.c, src/lexer.l, src/parse.y, src/str*, src/test.gob,
112 Partially back out the function attribute patch and rework it
113 in a simpler, more flexible, though syntactically not as nice
116 Fri Jul 10 10:22:10 2009 Jiri (George) Lebl <jirka@5z.com>
118 * doc/gob2.1.in: fix the _GET_CLASS documentation. Thanks to
119 Andrew Feren acferen at yahoo dot com. I guess this has been an
120 error in the docs since the GTK 1.x days
122 Fri Jul 10 09:57:29 2009 Jiri (George) Lebl <jirka@5z.com>
124 * doc/gob2.1.in, src/checks.c, src/checks.h, src/lexer.l, src/main.c,
125 src/parse.y, src/str.gob, src/str_test.c, src/test.gob,
126 src/treefuncs.def: Apply patch by Britton Kerin
127 bkerin at fastmail dot fm, to allow function attributes
128 like G_GNUC_PRINTF, etc...
130 * src/main.c: fix a warning
132 Tue Nov 20 23:22:57 2007 Jiri (George) Lebl <jirka@5z.com>
136 Wed Oct 17 09:56:18 2007 Jiri (George) Lebl <jirka@5z.com>
138 * configure.in, NEWS: raise version, make NEWS
140 Wed Oct 17 09:52:07 2007 Jiri (George) Lebl <jirka@5z.com>
142 * src/main.c, src/out.c: fix file_sep usage for private headers.
143 Thanks to Jan Hudec for reporting this.
145 Fri Sep 28 00:32:08 2007 Jiri (George) Lebl <jirka@5z.com>
147 * src/main.c, src/out.c: don't use /dev/null for portability to
150 Fri Sep 28 00:00:24 2007 Jiri (George) Lebl <jirka@5z.com>
152 * examples/my-person.gob: fixup example to be correct
154 Thu Sep 27 23:27:33 2007 Jiri (George) Lebl <jirka@5z.com>
156 * src/lexer.l: fix debian bug #443907, seg on bad include statement
158 Thu Jan 05 10:09:32 2006 George (Jiri) Lebl <jirka@5z.com>
162 Thu Jan 05 10:06:38 2006 George (Jiri) Lebl <jirka@5z.com>
164 * src/main.c: fix major segfault (oops!)
166 Fri Dec 16 12:23:35 2005 George Lebl <jirka@5z.com>
168 * src/main.c, src/parse.y: Fix for the libglade support from
169 Nicolas Bruguier <gandalfn@club-internet.fr>
171 * src/checks.c, src/main.c, src/util.c: Allow BOXED in signal
172 arguments. patch by Big Thor <lirico@web.de>
174 * src/main.c, src/main.c, src/parse.y, src/treefuncs.def:
175 Add abstract flag support, patch by Jean-Yves Lefort
176 <jylefort@brutele.be>
178 * src/main.c: add --no-touch support to avoid unneccessary rebuilds
179 even for source files. Also avoid printing timestamp and
180 make the compare logic work without the 'cmp' command.
181 patch by Jean-Yves Lefort <jylefort@brutele.be>
183 * doc/gob2.1.in: document changes above
185 Fri Jul 22 13:10:20 2005 George Lebl <jirka@5z.com>
189 * doc/gob2.1.in: slight update
191 Fri Jul 22 12:56:26 2005 George Lebl <jirka@5z.com>
193 * src/main.c: Apply patch from "Big Thor" <lirico@web.de> to
194 not use TYPE_SELF for the privates code
196 Fri Jul 22 12:48:27 2005 George Lebl <jirka@5z.com>
198 * Apply patch from Nicolas Bruguier <gandalfn@club-internet.fr>
199 but changed the syntax slightly, fixed some minor glitches and
202 * src/check.[ch], src/lexer.l, src/main.[ch], src/parse.y,
203 src/treefuncs.[ch],src/treefuncs.def: Add liglade support
205 Fri Jul 22 11:41:20 2005 George Lebl <jirka@5z.com>
207 * src/lexer.l: allow parsing properties with no param spec, patch
208 from Jean-Yves Lefort <jylefort@brutele.be>
210 Wed Jul 06 16:35:14 2005 George Lebl <jirka@5z.com>
212 * src/main.c: Apply patch from Jean-Yves Lefort <jylefort@brutele.be>
213 to fixup parameters: (remove MASK, CHILD_ARG and add LAX_VALIDATION
214 and PRIVATE, and allow user created parameters).
216 Thu Dec 23 14:35:12 2004 George Lebl <jirka@5z.com>
218 * src/main.[ch], src/lexer.l: Add support for prealloc and add
219 support for bitfields. Patch from "K. Haley"
220 <haleykd@users.sourceforge.net>
222 Tue Oct 26 16:30:44 2004 George Lebl <jirka@5z.com>
226 Tue Oct 26 16:27:44 2004 George Lebl <jirka@5z.com>
228 * src/main.c: fix compile when overrides and privates are used
230 Wed Sep 22 17:12:25 2004 George Lebl <jirka@5z.com>
234 Wed Sep 22 17:07:35 2004 George Lebl <jirka@5z.com>
236 * src/main.c: Apply patch from "K. Haley"
237 <haleykd@users.sourceforge.net> to play nice with glibs private
238 stuff and have the private structure be allocated by glib
240 * src/main.c, src/util.c: Apply patch from
241 Pierre Gay <gay-pierre@wanadoo.fr> to add the --file-sep=c option
242 which allows one to change the file separator character.
244 * doc/gob2.1.in: update docs
246 * src/parse.y: apply patch from debian bug#270546 by Frank
247 Lichtenheld <djpig@debian.org> to fix c++ compilation of linked
248 POINTER types by adding a proper cast at the right place
250 * src/main.c: always add string.h since it doesn't hurt and we missed
253 * src/main.c: destroywith and unrefwith function get cast with
254 reinterpret_cast when using --for-cpp and don't get cast at all
255 for C, but for C we cast the pointer going into the function
258 Tue Aug 10 16:32:00 2004 George Lebl <jirka@5z.com>
260 * src/main.c, src/parse.y, src/treefuncs.def: Apply patch from
261 Jean-Yves Lefort <jylefort@brutele.be> to support overriding
262 properties (g_object_class_override_property)
264 * doc/gob2.1.in: update
266 Thu Jul 29 10:47:31 2004 George Lebl <jirka@5z.com>
268 * configure.in, src/Makefile.am: Apply patch from "K. Haley"
269 <haleykd@users.sourceforge.net> to fix handling of NOINSTGOB
270 on certain platforms (apparently windows).
272 Mon Jul 19 09:37:21 2004 George Lebl <jirka@5z.com>
276 Mon Jul 19 09:30:18 2004 George Lebl <jirka@5z.com>
278 * src/main.c, src/test.gob, src/Makefile.am, src/parse.y: Fix for
279 -Wbad-function-cast which is kind of a moronic warning when it
280 comes to enums so in non-C++ mode just use the generic gint and
281 guint casts for enums and flags, on the other hand C++ really
282 requires the proper enum casts, go figure.
284 * configure.in, NEWS: prepare for another release
286 Thu Jul 08 16:22:56 2004 George Lebl <jirka@5z.com>
288 * src/main.c: Rework the unused var warning avoidance since it was
289 causing different warnings. I sort of now assume we're using
290 gcc if we want no warnings, other compilers will likely get
291 warnings in places. But they probably got some warnings anyway.
292 Also fixup all kinds of other places that cause warnings to popup.
294 * src/test.gob, src/Makefile.am: Test for all kinds of warnings.
296 Fri Jun 11 15:16:05 2004 George Lebl <jirka@5z.com>
300 * doc/gob2.1.in: quote the version in GOB2_CHECK
302 Fri May 07 18:07:33 2004 George Lebl <jirka@5z.com>
304 * src/main.c: add -o,--output-dir command line option
306 * doc/gob2.1.in: document the above
308 Tue May 04 22:34:00 2004 George Lebl <jirka@5z.com>
310 * src/parse.y, src/main.c, src/util.[ch]: move the make_me_type
311 to util and use it when making the boxed property set/get function
314 Tue Apr 13 11:32:51 2004 George Lebl <jirka@5z.com>
316 * doc/gob2.1.in: --always-private-header is NOT the default, but
317 --ondemand-private-header is the default.
319 Tue Mar 30 17:32:47 2004 George Lebl <jirka@5z.com>
323 Tue Mar 30 17:27:32 2004 George Lebl <jirka@5z.com>
325 * src/checks.[ch], src/main.c: check for classwide members with
326 destructors and warn there, since our classes are all static,
327 we never destroy them anyway so this never happens. It all
328 depends on your setup, so we cannot do some atexit or whatnot.
329 Also disallow BOXED or FLAGS in signal arguments since that doesn't
330 work anyway and you can use POINTER and UINT instead.
332 * src/main.c, src/util.[ch]: fix the depracation fixing which broke
333 everything since g_strup/g_strdown had different semantics
334 then the new g_ascii_ versions. So make our own
335 gob_strup/gob_strdown functions with the old semantics.
337 * src/main.c: use our error function exclusively instead of g_error.
339 * src/util.c: fix the error function to correctly follow exit_on_warn
340 and fix it when filename == NULL still
342 * src/test.gob: fix the test wrt BOXED and FLAGS
344 Thu Feb 19 11:36:09 2004 George Lebl <jirka@5z.com>
346 * doc/gob2.1.in: further stupidity fix
348 Thu Feb 19 11:31:40 2004 George Lebl <jirka@5z.com>
350 * doc/gob2.1.in, doc/makehtml.pl: fix a small error with the
351 documentation and suppor the \& escape in the makehtml.pl script
353 Thu Feb 19 11:17:45 2004 George Lebl <jirka@5z.com>
355 * src/lexer.l, src/Makefile.am: Apply patch from Albert Chin-A-Young
356 <china@thewrittenword.com> to fix compilation on IBMs C compiler,
357 by tweaking the includes and removing the -W options from AM_CFLAGS
358 as those are supported only by gcc
360 2003-02-08 Tomasz K³oczko <kloczek@pld.org.pl>
362 * gob2.m4: Trivial fix: added missing [] quotation macro name
363 defined in AC_DEFUN() (neccessary for aclocal from automake 1.8.x
364 and backward compatible with older auto tools).
366 Tue Feb 03 12:57:45 2004 George Lebl <jirka@5z.com>
368 * src/main.c, src/util.c: Apply patch from Kjartan Maraas
369 <kmaraas@broadpark.no> to remove use of deprecated functions
371 Wed Jan 21 09:24:12 2004 Nicolas Bruguier <gandalfn@club-internet.fr>
373 * src/main.c: add INT64 and UINT64 type support for signal
376 Wed Aug 06 11:37:06 2003 George Lebl <jirka@5z.com>
378 * doc/gob2.1.in: very minor fix from my inbox from apr 03
381 Tue May 20 10:22:40 2003 George Lebl <jirka@5z.com>
385 Tue May 20 10:18:10 2003 George Lebl <jirka@5z.com>
387 * src/Makefile.am: fix some warnings related to newer automake
389 Thu May 15 09:53:25 2003 George Lebl <jirka@5z.com>
391 * src/lexer.l: new flex is on drugs and it broke syntax (or
392 well the generated code defines) so this will actually make things
393 work with newer flex and still work with old flex (tested both
396 Fri Feb 28 11:45:21 2003 George Lebl <jirka@5z.com>
398 * doc/gob2.1.in: minor update
400 Thu Jan 16 12:45:33 2003 George Lebl <jirka@5z.com>
404 Thu Jan 16 11:52:36 2003 George Lebl <jirka@5z.com>
406 * src/main.c: fix leak on signal emission
408 Fri Dec 13 10:23:16 2002 George Lebl <jirka@5z.com>
412 Thu Dec 12 09:35:46 2002 George Lebl <jirka@5z.com>
414 * src/main.c: use G_UNLIKELY/G_LIKELY if available in the get_type
415 methods and in the signal argument size checking
417 Thu Dec 05 10:32:09 2002 George Lebl <jirka@5z.com>
419 * src/lexer.l, src/main.c: fix a couple of gtkdoc issues,
420 first add \n after _get_type and second support tabs
421 after the leading * in gtkdoc comments
423 2002-11-27 Jody Goldberg <jody@gnome.org>
427 2002-11-01 Jody Goldberg <jody@gnome.org>
429 * src/parse.y (ensure_property) : patch obvious borkage in using item3
430 in a production with 2 items.
432 Fri Nov 01 14:41:52 2002 George Lebl <jirka@5z.com>
434 * src/lexer.l, src/util.c: when in cpp mode don't eat ::
436 Mon Oct 14 16:16:38 2002 George Lebl <jirka@5z.com>
438 * src/parse.y: Fix segfault reported by Gerhard Dieringer
439 <Gerhard.Dieringer@nexgo.de>
441 * src/main.c, src/util.c: Fix g_value_set/get for the unichar
442 case (glib doesn't have this, so use uint, this is so braindead).
443 Also add support for UNICHAR in places and add support for
446 Wed Sep 11 11:20:38 2002 George Lebl <jirka@5z.com>
448 * src/main.c: remove G_GNUC_CONST from the get_type, that seems to be
449 wrong and causes gcc3.2 to whack out and all that.
451 Tue Aug 20 11:01:52 2002 George Lebl <jirka@5z.com>
455 Tue Aug 06 12:30:15 2002 George Lebl <jirka@5z.com>
457 * doc/gob2.1.in: escape all ' characters, to fix debian
458 bug 155577. Also add the homepage to the last section
460 * doc/makehtml.pl: improve handling of some troff and add
461 automatic urlization of email and web addresses
463 Tue Aug 06 12:08:20 2002 George Lebl <jirka@5z.com>
465 * src/test.gob: further tests
467 Tue Aug 06 12:06:07 2002 George Lebl <jirka@5z.com>
469 * src/main.c: damnit s/shutdown/dispose/, why does glib change
470 these on me. I think there is an evil anti-gob plot in place.
472 * src/test.gob: add a test for unrefwith (should have been there in
473 the first place to catch this)
475 * doc/gob2.1.in: update the unref/unrefwith section
477 Mon Aug 05 11:11:01 2002 George Lebl <jirka@5z.com>
479 * src/parse.y: properly link the BOXED type (use g_value_set_boxed)
481 Wed Jul 17 11:01:40 2002 George Lebl <jirka@5z.com>
485 Wed Jul 17 10:52:29 2002 George Lebl <jirka@5z.com>
487 * src/test.gob: add more tests
489 * doc/gob2.1.in: minor updates
491 * src/lexer.l: allow comments in property definition code
493 Tue Jul 16 13:33:51 2002 George Lebl <jirka@5z.com>
495 * NEWS, configure.in: prepare for 2.0.1
497 Tue Jul 16 13:31:42 2002 George Lebl <jirka@5z.com>
499 * src/main.c, src/parse.y: Fix extra property types but still
500 recognize if someone used the broken undocumented way which
501 worked. Also fix object linking to not rely on GtkObject, and
502 fix BOXED linking as well.
504 * src/test.gob: add some tests for the above
506 * src/parse.y: fix C++ compilation for flags and enum linking
508 Mon Jul 15 13:05:18 2002 George Lebl <jirka@5z.com>
512 * */Makefile.am: add '.' to SUBDIRS to silence a stupid version
515 Mon Jul 15 12:54:30 2002 George Lebl <jirka@5z.com>
517 * configure.in: raise version to 2.0.0
519 * examples/*: update examples and readme. Remove old, bad examples
521 * doc/gob2.1.in: update for gob2
523 Wed Jul 10 11:10:37 2002 George Lebl <jirka@5z.com>
525 * doc/gob2.1.in: update the docs a bit. Still not finished.
527 Tue May 28 12:09:56 2002 George Lebl <jirka@5z.com>
531 Tue May 28 11:59:18 2002 George Lebl <jirka@5z.com>
533 * src/Makefile.am: some compilation voodoo
535 * src/main.c: Special case GtkEditable and GTypePlugin since
536 those end in Class, and all other interfaces should end in
537 Iface. Long live code consistency!
539 * src/main.c: use g_signal_emitv instead of g_signal_emit. This
540 will allow us to once again have default returns and all that
541 fun stuff. It should also slightly reduce emission overhead.
543 Mon Apr 15 09:55:29 2002 George Lebl <jirka@5z.com>
545 * README, COPYING.generated-code, Makefile.am: Add LGPL license
546 for generated code and clarify this in the README. Meant to do
547 this a long time ago, and told everyone that who asked. Now
550 Sun Apr 14 19:12:02 2002 George Lebl <jirka@5z.com>
552 * src/parse.y: apply patch from Dennis Bjorklund <db@zigo.dhs.org>
553 to fix export accessors function
555 Fri Feb 01 15:19:07 2002 George Lebl <jirka@5z.com>
559 Fri Feb 01 01:42:09 2002 George Lebl <jirka@5z.com>
561 * src/main.c: get rid of the old way of doing typesafe signal
562 connection and make a new way where there are full connect
563 macros for connect, connect_after and connect_data for each
564 signal. A bit more heavy weight (only at compile time), but
565 it actually works, and is cleaner really.
567 2002-01-22 Bastien Nocera <hadess@hadess.net>
569 * src/main.c: (make_arguments): move the get_ and set_property before
570 parameters settings to work with latest glib
572 Fri Jan 18 14:21:22 2002 George Lebl <jirka@5z.com>
574 * src/treefuncs.(def|c|h), src/parse.y, src/lexer.l, src/main.c:
575 Implement GError definitions.
577 Thu Jan 17 02:39:02 2002 George Lebl <jirka@5z.com>
579 * gob2.m4: fix version check
581 * configure.in, src/Makefile.am: some build fixes and raise version
583 Thu Jan 10 22:05:42 2002 George Lebl <jirka@5z.com>
585 * src/parser.y, src/lexer.l, src/main.c, src/Makefile.am,
586 src/test.gob, src/treefuncs.(def|c|h): Implement using of
587 interfaces. That is, you can now implement interfaces on your
588 objects. You still can't define interfaces, that's step two.
590 Sun Dec 30 18:25:25 2001 George Lebl <jirka@5z.com>
592 * src/main.c: Apply patch from Josh Parsons <jp30@st-andrews.ac.uk>,
593 to fix some code generation
595 * src/parse.y: Be anal in linking string properties.
597 Thu Dec 20 17:39:32 2001 George Lebl <jirka@5z.com>
599 * src/main.c: Apply patch from Josh Parsons <jp30@st-andrews.ac.uk>
600 to enhance the m4 support, fix init function generation and
601 correctly include glib-object.h. Massage it a bit further as
604 Mon Nov 05 11:45:46 2001 George Lebl <jirka@5z.com>
606 * src/lexer.l, src/parser.y, src/main.c, src/treefuncs.def:
607 Add flags and enum creation code, so you can do things in
608 a more gob like manner rather then the glib-mkenums setup.
610 2001-10-27 Seth Nickell <snickell@stanford.edu>
612 Make BonoboObject stuff work, almost as much fun as
613 blowing goats and twice as messy. Built code still
614 requires a patch to libbonobo to run (changing the
615 name of the TYPE macro to fit w/ GNOME standards),
616 so retaining a warning that BonoboObject doesn't
617 really work (oh, but it does :-)
621 Make sure to substitute YFLAGS so you don't get undefined
622 crap when you use @YFLAGS@ in Makefile.am.
624 * src/main.c: (add_bonobo_object_get_type)
626 Add a GObject type function for BonoboObject stuff.
628 * src/main.c: (make_bonobo_object_epv)
630 Append self_ to function call as per gob2.
632 * src/main.c: (add_inits), (print_class_block)
634 * src/treefuncs.c: (ensure_quarks), (copy_class), (copy_method),
635 (free_class), (setv_class), (setv_method):
639 Change to using BonoboObject rather than BonoboXObject.
641 * examples/foo-some-interface.c
643 Update to work with GOB2 with BonoboObjectTechnology(TM).
645 2001-10-26 Seth Nickell <snickell@stanford.edu>
649 Add top_srcdir to the include flags to pick up config.h
652 Sat Oct 20 17:40:58 2001 George Lebl <jirka@5z.com>
654 * src/Makefile.am: a few fixes
656 Sat Oct 20 16:59:19 2001 George Lebl <jirka@5z.com>
658 * src/lexer.l, src/main.c, src/Makefile.am: Apply m4 preprocessing
659 patch by Josh Parsons <jp30@st-andrews.ac.uk>
661 Sat Sep 29 17:00:39 2001 George Lebl <jirka@5z.com>
663 * doc/Makefile.am: update
665 Sat Sep 29 16:44:13 2001 George Lebl <jirka@5z.com>
667 * doc/gob2.1.in: update a tad and add a note that the manual
670 Sat Sep 29 16:33:57 2001 George Lebl <jirka@5z.com>
672 * gob2.spec.in: update for gob2
674 Fri Sep 28 17:39:57 2001 George Lebl <jirka@5z.com>
676 * **/*: Merge from gob-2 to HEAD
678 Fri Sep 28 17:08:19 2001 George Lebl <jirka@5z.com>
680 * configure.in, gob2.spec.in, gob2.m4, doc/gob2.1.in, Makefile.am,
681 doc/Makefile.am: rename rest of files for gob2
683 * src/main.c: minor cleanup
685 Thu Sep 27 21:56:17 2001 George Lebl <jirka@5z.com>
687 * src/generate_treefuncs.pl, src/treefuncs.def, src/parse.y,
688 src/main.c: Revamp the tree funcs stuff to be saner and cooler,
689 and fix some crashes and other things related to this.
691 * src/parse.y, src/lexer.l, src/main.c, src/util.[ch],
692 src/checks.[ch], treefuncs.def: Add properties (GParam), fix
693 C++ generation, add GET_NEW_VARG, whack the propname alias for
694 arguments setters/getters (they're deprecated anyway)
696 * src/test.gob: update tests
698 Sun Sep 16 13:07:37 2001 George Lebl <jirka@5z.com>
700 * src/main.c: replace GOB_ prefix for local functions with
701 self_. This makes much more sense.
703 Sun Sep 16 12:43:24 2001 George Lebl <jirka@5z.com>
705 * src/lexer.l, src/parse.y, src/main.c, src/treefuncs.(def|c|h),
706 src/util.[ch], src/test.gob: Add syntax for properties (GParam
707 or whatever you call these:). The code behind them is not yet
710 Sun Aug 12 16:15:46 2001 George Lebl <jirka@5z.com>
712 * src/main.c, src/parse.y, src/test.gob, src/util.c: Things now
713 make compilable objects, including with signals, how well it
714 works I don't know. cpp support seems broken in glib mostly.
716 Sat Jun 30 15:01:26 2001 George Lebl <jirka@5z.com>
718 * Applied the following from HEAD
720 Sat Jun 30 14:57:37 2001 George Lebl <jirka@5z.com>
722 * doc/gob.1.in: add documentation for (export)
724 Tue Jun 26 15:54:08 2001 George Lebl <jirka@5z.com>
726 * src/Makefile.am: add built sources to EXTRA_DIST
728 2001-06-24 Mark Brown <broonie@sirena.org.uk>
730 * src/main.c: Default to PRIVATE_HEADER_ONDEMAND rather than
731 PRIVATE_HEADER_ALWAYS as per documentation.
733 * doc/gob.1.in: Fix cut & paste error in object_{get,set}
736 Sat Jun 09 13:38:53 2001 George Lebl <jirka@5z.com>
738 * src/parse.y: was freeing the wrong token
740 2001-06-03 Eskil Heyn Olsen <eskil@eskil.dk>
742 * examples/my-person.gob:
745 * examples/test-export.gob:
746 File that tests the (export) keyword.
749 Added a (export) keyword to argument, so gob will
750 autodefine the my_object_[get|set]_var functions.
752 Sun May 13 02:45:43 2001 George Lebl <jirka@5z.com>
754 * src/main.c: revert the GET_NEW_VARG since it just won't work
757 Sun May 13 02:31:52 2001 George Lebl <jirka@5z.com>
759 * src/main.c: add GET_NEW_VARG macro/static func (for non-gcc)
760 and add TYPE_SELF macro
762 Sun May 13 02:02:47 2001 George Lebl <jirka@5z.com>
764 * src/util.c: patch from Frederic Crozat <fcrozat@mandrakesoft.com>
767 Sat Apr 21 20:06:10 2001 George Lebl <jirka@5z.com>
769 * examples/Makefile.am, examples/README,
770 examples/GNOME_Foo_SomeInterface.idl,
771 examples/foo-some-interface.gob: Add an example for BonoboXObject
773 Sat Apr 21 19:33:08 2001 George Lebl <jirka@5z.com>
775 * configure.in: Raise version to 1.0.9
777 * src/lexer.l: Properly check major version requirements (majors
778 must match in the requires line)
780 * src/parse.y, src/main.c, src/treefuncs.(def|c|h), src/checks.c:
781 Add direct BonoboXObject support
783 * src/parse.y: fix the chunks usage
785 * doc/gob.1.in: document BonoboXObject stuff, fix the bugs section
786 wrt gtk-doc which has been supported for quite some time
788 Sat Apr 14 00:11:50 2001 George Lebl <jirka@5z.com>
790 * configure.in: compile with glib 2.0
792 * src/test.gob, src/Makefile.am: make the test glib pure, or mostly
795 * src/lexer.l: added fixme
797 * src/main.c: work on signals a little bit
799 Fri Apr 13 21:23:19 2001 George Lebl <jirka@5z.com>
801 * src/checks.[ch], src/lexer.l, src/main.c, src/parse.y,
802 src/treefuncs.[ch], src/treefuncs.def: Work on gobject support,
803 based on the patch Sven sent me. Also do add unref as well as
804 destroy handlers to vars, and moved the destructors to finalize and
805 unreffers to shutdown. This all compiles, but that doesn't mean it
806 makes usable objects.
808 Fri Apr 13 17:45:14 2001 George Lebl <jirka@5z.com>
810 * src/parse.y, doc/gob.1.in: Fix a problem found by Eric Kidd
811 <eric.kidd@pobox.com>, where objectlink was not completely
812 refcounting safe. Could underref if you set the same object.
814 Sat Mar 31 00:24:58 2001 George Lebl <jirka@5z.com>
816 * src/main.c: fix crash with marshallers of signals with a return
817 type and no arguments.
819 Sun Mar 04 19:14:03 2001 George Lebl <jirka@5z.com>
821 * src/main.c, src/checks.c, src/util.[ch]: Remove the underscore
822 hack, remove the 1.2 code from the 1.3 compat hacks, make all
823 short names start with GOB_. Start of the direct GObject
824 support, gob compiles, but it will not create useful object
827 Tue Feb 27 06:14:59 2001 George Lebl <jirka@5z.com>
829 * configure.in, src/Makefile.am, README: this is the gob-2 branch
832 Tue Feb 27 00:53:41 2001 Jonathan Blandford <jrb@redhat.com>
834 * README: Use my new-found maintainer status!!! The power!
836 Sun Feb 25 17:17:46 2001 George Lebl <jirka@5z.com>
840 Sun Feb 25 16:57:45 2001 George Lebl <jirka@5z.com>
842 * src/main.c, src/checks.c: to make doing BonoboXObjects possible
843 allow overriding the _get_type function.
845 * doc/gob.1.in: document the above
847 Sun Feb 11 16:33:07 2001 George Lebl <jirka@5z.com>
851 Sat Feb 10 18:42:59 2001 George Lebl <jirka@5z.com>
853 * src/Makefile.am: fix the build
855 2001-02-08 Maciej Stachowiak <mjs@eazel.com>
857 * src/Makefile.am: Remove BUILT_SOURCES stuff; Automake knows how
858 to handle .l and .y files directly, and including the .c files as
859 well was making it fail to link as it would try to link in lexer.o
862 Thu Feb 08 02:43:22 2001 George Lebl <jirka@5z.com>
864 * src/main.c: add signal connection typesafety macros
866 * src/test.gob, doc/gob.1.in: new stuff foo
868 * configure.in: raise version
870 Thu Feb 08 01:42:52 2001 George Lebl <jirka@5z.com>
872 * src/Makefile.am: rule for parse.h includes parse.c, and
873 SOURCES include BUILT_SOURCES
875 Tue Dec 26 11:03:44 2000 George Lebl <jirka@5z.com>
877 * src/main.c: Remove ## from the varargs macro stuff, as it's not
878 needed and causes trouble for newer gcc's (like in rh7)
880 Sun Sep 10 18:04:07 2000 George Lebl <jirka@5z.com>
884 Fri Sep 01 03:45:30 2000 George Lebl <jirka@5z.com>
886 * src/main.c: add G_GNUC_CONST to the _get_type function
888 Wed Aug 23 15:05:40 2000 George Lebl <jirka@5z.com>
890 * src/main.c: when a method has no arguments make an argumentless
891 macro for the shortform to avoid a parse error
893 * src/test.gob: add a test for the above
895 Sun Aug 6 22:21:38 2000 Eskil Heyn Olsen <eskil@eazel.com>
897 * gob.m4 now defaults to WARN instead of ERROR on missing
900 Tue Jul 25 16:54:34 2000 George Lebl <jirka@5z.com>
904 * configure.in: raise version to 1.0.4
906 * src/main.c: fixup the -anal macro patch.
908 * src/util.[ch], src/main.c: constize (not in 1.0.4)
910 * src/main.c: the short form pointers unified for both gnu and non-gnu
913 Sun Jul 23 18:51:45 2000 George Lebl <jirka@5z.com>
915 * src/util.[ch], src/main.c, src/checks.c, src/lexer.l, src/parse.y:
916 make new cleaner error print routines including a printfstyle one.
917 Use the get_real_id on all method ids even for overrides. When a
918 signal is added there is also a sizeof check for the signature vs.
919 argument list with a g_error if it fails. Fix %at{ %} to not
920 appear twice in all files.
922 * src/main.c: Apply patch from Arturo Tena to make things compile
923 nicely with gcc's -ansi -pedantic
925 * src/out.[ch]: constize correctly and use G_GNUC_PRINTF macro for
928 Fri Jul 21 15:38:10 2000 George Lebl <jirka@5z.com>
930 * src/main.c: store the private structure pointer so that we
931 don't look inside the freed object structureafter finalize
933 Thu Jul 06 02:32:29 2000 George Lebl <jirka@5z.com>
937 Wed Jul 05 19:37:20 2000 George Lebl <jirka@5z.com>
939 * src/{main.c,parse.y}: couple of cleanups, and fixup the gtk 1.3
942 Wed Jul 05 18:57:13 2000 George Lebl <jirka@5z.com>
944 * src/{checks.c, main.c, parse.y, test.gob}: Apply and fix up patch
945 from Bas van der Linden <linden@win.tue.nl> that adds the ability
946 to use const on the "self" argument as well. Also adds a CONST
947 casting macro to use.
949 * src/main.c: Fix a memory leak when destroy wasn't overriden and
950 destructors were added, it now properly calls the parent handler.
953 * src/main.c: Spit out some macro magic foo to hopefully make it
954 possible to compile objects with GTK+ 1.3/2.0
956 * doc/gob.1.in, examples/*.gob: We should never do
957 GTK_OBJECT(GET_NEW) as that's a memory leak due to some weird
958 GTK_OBJECT() semantics
960 Fri Jun 30 14:08:53 2000 George Lebl <jirka@5z.com>
964 Fri Jun 30 13:11:05 2000 George Lebl <jirka@5z.com>
966 * doc/gob.1.in: add doc for --always-private-struct
968 * src/main.c: fix output of --help. Also print __GOB_FUNCTION__
969 for inits and for get/set_arg. And print the get_real_id to
970 avoid the underscore.
972 Mon Jun 26 00:06:45 2000 George Lebl <jirka@5z.com>
974 * src/parse.y: for stringlink, dup the string on argument
977 * doc/gob.1.in: update documentation to the above change
979 Sun Jun 25 03:34:02 2000 George Lebl <jirka@5z.com>
981 * src/treefuncs.def, src/main.c, src/utils.[ch], src/parse.y: sane
982 parsing of const. Get rid of "stars" integer and just use a
983 "pointer" string. Also the types in general are more sanely parsed,
984 thus recognizing hopefully all legal (and some illegal) C types.
986 * src/checks.[ch], src/main.c: checks the argument type to be one we can
989 * src/treefuncs.def, src/main.c, src/parse.y, src/lexer.l: Apply
990 patch from Bas van der Linden <linden@win.tue.nl> that adds the
991 possibility to use chunks to allocate objects.
993 * src/main.c: Apply patch from Bas van der Linden <linden@win.tue.nl>
994 to add a __GOB_FUNCTION__ define to each function
996 * src/Makefile.am, src/main.c, src/lexer.l, src/generate_treefuncs.pl:
997 avoid and fix warnings, and compile with all warnings
999 * src/main.[ch]: add an --always-private-struct option to always put
1000 in the private pointer, even if there are no private members.
1002 * src/test.gob: add some more tests for new stuff
1004 Wed Jun 07 15:03:18 2000 George Lebl <jirka@5z.com>
1008 Wed Jun 07 14:41:24 2000 George Lebl <jirka@5z.com>
1010 * configure.in, doc/gob.1.in: updates
1012 Mon Jun 05 12:10:46 2000 George Lebl <jirka@5z.com>
1014 * doc/gob.1.in: run through ispell, and fix option stuff to produce
1015 nicer html output with groff
1017 Thu Jun 01 18:12:13 2000 George Lebl <jirka@5z.com>
1019 * src/main.c: Make the private header switches work again.
1021 Wed May 31 01:50:25 2000 George Lebl <jirka@5z.com>
1025 Wed May 31 01:47:23 2000 George Lebl <jirka@5z.com>
1027 * src/gob.1.in: documentation of makefile rules for gob.
1029 Tue May 30 11:02:36 2000 George Lebl <jirka@5z.com>
1031 * src/lexer.l: Accept identifiers in array dimensions, this is so
1032 that you can make these some constants.
1034 Sat May 20 18:22:33 2000 George Lebl <jirka@5z.com>
1038 Sat May 20 18:22:23 2000 George Lebl <jirka@5z.com>
1040 * src/{main.c,checks.[ch]}: check for duplicate overrides, it is
1041 different from checking symbol names as they don't conflict with
1042 other symbols AND they only conflict if both the name and their
1045 Sat May 20 16:38:06 2000 George Lebl <jirka@5z.com>
1047 * src/{main.[ch],util.[ch],checks.c}: Add underscore removal for
1048 non-override methods. This means that local aliases will include
1049 prepended underscores, but when the full name is generated, or
1050 when the method name is added to class structure, the underscore
1053 * src/checks.c: overrides no longer checked for uniqueness, a more
1054 complex logic is needed.
1056 * src/{main.c,treefuncs.def,parse.y}: override naming is done
1057 with a unique id, so that we handle cases where two classes have
1058 the same method name.
1060 * doc/gob.1.in: update for the above.
1062 Sat May 20 14:42:00 2000 George Lebl <jirka@5z.com>
1064 * src/main.c: the private structure is now freed in finalize again and
1065 thus do the same dance around finalize as we do around destroy.
1066 Clean up some code. NULL all things being destroyed. The arbitary
1067 destructor uses memset as those things might not be just pointers.
1069 Thu May 11 23:48:44 2000 George Lebl <jirka@5z.com>
1071 * src/main.[ch]: provide the Self and SelfClass typedefs in addition
1072 to SELF, IS_SELF, SELF_CLASS macros. All of these can now be
1073 disabled with the --no-self-alias option
1075 * doc/gob.1.in: update
1077 * configure.in: raise version
1079 Tue May 09 23:18:16 2000 George Lebl <jirka@5z.com>
1081 * src/parse.y: fix segfault on parse error and give better error
1084 Tue May 09 21:54:10 2000 George Lebl <jirka@5z.com>
1086 * doc/gob.1.in, src/main.c: Add destruction code into the destroy
1087 handler rather then finalize. Setup an extra function if
1088 neccessary to handle returns correctly as this must be called
1089 after any user code.
1091 Sat Apr 29 14:41:42 2000 George Lebl <jirka@5z.com>
1095 Sat Apr 29 14:40:40 2000 George Lebl <jirka@5z.com>
1097 * src/checks.c: code prettification
1099 * src/lexer.l, src/parse.y, src/test.gob: change "class" scope to
1100 "classwide" scope, not to overload the class keyword
1102 * src/main.[ch]: make private header files be generated by default,
1103 and cleanup that part a bit
1105 * doc/gob.1.in: add documentation of classwide
1109 Fri Apr 21 17:15:09 2000 George Lebl <jirka@5z.com>
1111 * src/main.c: add spaces after commas
1113 * src/lexer.l, src/main.c, src/parse.y: add class scope variables
1114 which are put into the class structure
1116 * src/test.gob: added a test for class variables
1118 * src/treefuncs.def: added CLASS_SCOPE
1120 * src/treefuncs.h: regenerated
1122 Mon Apr 17 20:13:47 2000 George Lebl <jirka@5z.com>
1124 * src/parse.y: on objectlink instead of just ref, do ref/sink.
1126 Sat Apr 15 23:07:30 2000 George Lebl <jirka@5z.com>
1130 Sat Apr 15 22:42:20 2000 George Lebl <jirka@5z.com>
1132 * src/main.c: fixes for ANSI C and C++. Just use GTK_VALUE_POINTER
1133 instead of GTK_VALUE_OBJECT so that we don't have to cast and don't
1136 Sat Apr 15 22:09:49 2000 George Lebl <jirka@5z.com>
1138 * src/main.c: use the generic return type in signal marshallers
1139 rather then the specific one as the marshallers are truly generic
1141 Sat Apr 15 21:52:52 2000 George Lebl <jirka@5z.com>
1143 * src/main.c: fix some typesafety braindamages with OBJECT types
1144 in arguments by casting GTK_VALUE_OBJECT to gpointer. Also
1145 for seting arguments cast the ARG to atype if it exists
1147 Wed Apr 05 13:42:28 2000 George Lebl <jirka@5z.com>
1149 * src/parse.y: never allow NONE to be used as one of many arguments,
1150 always only by itself in the argument list
1152 * src/main.c: When printing out the signal marshaller prototype,
1153 don't print out the NONE (void) into the argument list, thanks
1154 to Soeren Sandmann <sandmann@daimi.au.dk> for reporting that
1156 Mon Apr 03 13:07:33 2000 George Lebl <jirka@5z.com>
1158 * examples/Makefile.am: add my-person2.gob to EXTRA_DIST
1160 Sun Apr 02 18:09:40 2000 George Lebl <jirka@5z.com>
1164 Sun Apr 02 17:38:12 2000 George Lebl <jirka@5z.com>
1166 * src/Makefile.am: ass the .pl and .def file to EXTRA_DIST
1168 Sun Apr 2 14:37:49 PDT 2000 Manish Singh <yosh@gimp.org>
1170 * configure.in: check for treefuncs.h instead of tree.h, since
1171 the latter has gone bye-bye
1173 Sat Apr 01 23:27:47 2000 George Lebl <jirka@5z.com>
1175 * doc/gob.1.in: add documentation for defreturn
1177 Sat Apr 01 18:03:31 2000 George Lebl <jirka@5z.com>
1179 * src/{treefuncs.(def|c|h),generate_treefuncs.pl}: What would gob
1180 be without some automatically generated code. The tree.[ch] was
1181 hard to keep up and didn't have free/copy so these do, otherwise
1182 it is the same. Also added a defreturn field to methods
1184 * src/*.[cyl]: include treefuncs.h rather then tree.h
1186 * src/{parse.y,lexer.l,main.c}: use the defreturn as the default for
1187 return values of signals and virtual methods. If this is not
1188 defined use the onerror or failing that '0'. onerror is also not
1189 a reserved keyword anymore
1191 * configure.in: raise version
1193 Mon Mar 27 13:08:01 2000 George Lebl <jirka@5z.com>
1197 Mon Mar 27 12:04:22 2000 George Lebl <jirka@5z.com>
1199 * src/util.[ch], src/main.c: figure out if we really need the special
1200 types, also make a hash for the gtk types instead of linear
1201 searching it all the time.
1203 * src/{lexer.c,checks.c,main.c}: minor fixes and cleanups
1205 2000-03-21 Eskil Heyn Olsen <deity@eskil.dk>
1207 * gob.m4: do not default GOB to no when not found (did that make
1209 And better error message.
1211 Mon Mar 20 14:35:35 2000 George Lebl <jirka@5z.com>
1213 * src/lexer.l: handle single word typenames with an empty namespace
1215 Sun Mar 05 02:23:04 2000 George Lebl <jirka@5z.com>
1217 * src/main.c: add #lines around setting default handlers
1219 * src/parse.y: fix line number for 'destroywith' destructors
1221 Sat Mar 04 15:33:18 2000 George Lebl <jirka@5z.com>
1223 * src/checks.c: duplicate name test for arguments and signals is
1224 case insensitive now as those could cause trouble
1226 Mon Feb 28 02:45:27 2000 George Lebl <jirka@5z.com>
1230 Sun Feb 27 20:59:45 2000 George Lebl <jirka@5z.com>
1232 * src/parse.y,doc/gob.1.in: For stringlink, just return a pointer on
1233 get rather then strduping as that is 1) consistent with objectlink
1234 and 2) more flexible.
1236 Sun Feb 27 20:38:19 2000 George Lebl <jirka@5z.com>
1238 * src/{main.c,tree.[ch],parse.y}: add the arbitrary destruction handler
1241 * doc/gob.1.in: updated and fixed up
1243 * configure.in,NEWS,examples/{README,my-person2.gob}: change version
1246 Sun Feb 27 18:37:57 2000 George Lebl <jirka@5z.com>
1248 * NEWS,doc/gob.1.in,examples/{README,my-person.gob,my-person2.gob}:
1249 update of docs and examples to include the new features and minor
1252 Sun Feb 27 04:41:41 2000 George Lebl <jirka@5z.com>
1254 * src/main.c: make the output nicer for classes with no methods
1255 better typechecking in get/set_arg, fix a couple of C++ issues,
1257 * src/{main.c,parse.y,tree.[ch]}: automatic linking of arguments to
1258 data members. Also alow empty statements inside a class. Also
1259 add automatic data member destruction for pointer data, and
1260 automatic initialization for any data member.
1262 * src/main.[ch],src/out.c: add --no-lines which inhibits printing
1263 of #line things to output files
1265 * doc/gob.1.in: update for the above
1267 Fri Feb 25 15:21:47 2000 George Lebl <jirka@5z.com>
1271 Fri Feb 25 14:46:51 2000 George Lebl <jirka@5z.com>
1273 * src/main.c: add SELF casting macros
1275 * doc/gob.1.in: document the above
1277 Fri Feb 25 02:29:26 2000 George Lebl <jirka@5z.com>
1279 * src/main.c,src/tree.[ch],src/parse.y: public signals get
1280 GTK_RUN_ACTION added. Plus an interface for adding additional
1283 * doc/gob.1.in: add docs for the above
1285 Fri Feb 25 01:37:20 2000 George Lebl <jirka@5z.com>
1287 * src/main.c: fix trailing comma on the end of the argument enum
1289 Sun Feb 13 23:54:53 2000 George Lebl <jirka@5z.com>
1291 * doc/gob.1.in: add doc patch from Dave Dunkin <dunkind@letu.edu>
1293 * doc/gob.1.in,examples/*.gob: use init(self) to be more consistent
1296 Sat Feb 12 14:42:15 2000 George Lebl <jirka@5z.com>
1298 * src/main.c,src/lexer.l: apply patches from Dave Dunkin
1299 <dunkind@letu.edu> to add all and alltop ccode sections
1300 and to add a --no-write,-n option to not actually write
1301 any files. Also did some very cosmetic changes to code
1303 Mon Feb 07 23:45:04 2000 George Lebl <jirka@5z.com>
1305 * src/main.c: use the magic /*< private >*/ and /*< public >*/
1306 comments to distinguish public and protected data members
1308 Mon Feb 07 03:02:48 2000 George Lebl <jirka@5z.com>
1312 Mon Feb 07 02:50:11 2000 George Lebl <jirka@5z.com>
1314 * src/lexer.l: error on multiple classes
1316 * src/main.c: nicer header output
1318 * src/{lexer.l,main.c}: Eat out gtk-doc like inline doc entries
1319 and stuff them into the output files where appropriate
1321 * doc/gob.1.in: added docs for gtk-doc like inline doc stuff
1323 * examples/{README, gtk-button-count.gob}: added inline docs
1325 Fri Feb 04 01:07:54 2000 George Lebl <jirka@5z.com>
1327 * src/main.c: use G_GNUC_UNUSED rather then our own macro for a
1328 very slightly cleaner looking output file
1330 2000-01-31 Eskil Heyn Olsen <deity@eskil.dk>
1332 * gob.m4: checks for gob binary, GOB_CHECK([version [,
1333 action_if_found[, action_if_not_found]]]).
1335 * Makefile.am: Install gob in $prefix/share/aclocal
1337 Thu Jan 27 17:50:11 2000 George Lebl <jirka@5z.com>
1339 * src/main.c: add #include <stdlib.h>
1341 Mon Jan 24 22:52:47 2000 George Lebl <jirka@5z.com>
1345 Mon Jan 24 22:23:47 2000 George Lebl <jirka@5z.com>
1347 * src/main.c: add a protecting define before the object typedef
1349 * doc/gob.1.in: add docs for the new stuff
1351 Sun Jan 23 16:19:54 2000 George Lebl <jirka@5z.com>
1353 * src/{lexer.l,parse.y,tree.[ch],main.c}: make more types of header
1354 %{ %} blocks, "headertop" and "privateheader" and made short as
1355 well as long names possible.
1357 * src/main.c: add an --no-extern-c option to not put entern "C" into
1358 the output, which is now put in by default even if --for-cpp is
1359 on so that it is possible to call those from C by default
1361 Thu Jan 20 01:50:45 2000 George Lebl <jirka@5z.com>
1363 * src/main.c: put the _real_ functions in our normal private
1364 namespace of ___* to be more consistent.
1366 Mon Jan 10 00:16:43 2000 George Lebl <jirka@5z.com>
1368 * src/{main.[ch],util.[ch],checks.[ch]}: offload some functionality to
1371 * src/main.c: cleanup the generation routine by spliting it up into
1374 * src/{main.h,lexer.l,parse.y,out.c}: put some needed externs into the
1375 main.h file and include that rather then doing it in the .c files
1377 Thu Jan 06 18:33:44 2000 George Lebl <jirka@5z.com>
1379 * src/main.c: use ___ for the signal marshalling typedefs as well
1381 Thu Jan 06 17:32:46 2000 George Lebl <jirka@5z.com>
1385 Thu Jan 06 17:13:22 2000 George Lebl <jirka@5z.com>
1387 * src/main.c: be consistent with the use of "namespacing", we
1388 prefix ALL internal gob stuff with "___". This should make it
1389 easier to avoid name conflicts with user code and glibc/gcc (Which
1390 seems to use __ prefix)
1392 * src/main.c: check for init and class_init names for non-constructor
1393 methods and give an error if found.
1395 * src/main.c: check argument types and flags for correctness, error
1396 on unknown type, but just a warning on unknown flag
1398 * doc/gob.1.in: add a section for name conflicts
1400 Wed Jan 05 02:23:21 2000 George Lebl <jirka@5z.com>
1402 * src/main.c: doh! the symbols for the aliases need to be declared as
1405 Wed Jan 05 02:13:59 2000 George Lebl <jirka@5z.com>
1407 * src/main.c: just realized that args... for macros is a GNU
1408 extention and so the PARENT_HANDLER no longer uses it, but prints
1409 the argument names with __ prefixed into the argument list.
1411 Wed Jan 05 01:58:32 2000 George Lebl <jirka@5z.com>
1413 * src/main.c: if using gnu c, also define macros using varargs for
1414 function aliases. This should allow the compiler to optimize
1415 further and if we have arguments for the defines there are
1416 no adverse side effects as there are for straight defines.
1418 Wed Jan 05 01:48:12 2000 George Lebl <jirka@5z.com>
1420 * src/main.c: fixup the aliases. They didn't actually work right.
1421 now we set it up as a const pointer to a function using typeof.
1423 Tue Jan 04 17:57:55 2000 George Lebl <jirka@5z.com>
1425 * src/lexer.l: add support for 'requires x.y.z' line. This is
1426 so that a .gob file can require at least version x.y.z of gob
1428 * src/test.gob: update
1430 * doc/gob.1.in: update for requires and run trhough ispell
1432 Tue Jan 04 17:10:54 2000 George Lebl <jirka@5z.com>
1434 * src/main.c: fix the non-gnu aliases
1436 Tue Jan 04 16:46:16 2000 George Lebl <jirka@5z.com>
1438 * src/{main.c,parser.y,tree.[ch]}: add optional C type specification
1439 to arguments for full type safety
1441 * doc/gob.1.in: updated
1443 Tue Jan 04 15:34:16 2000 George Lebl <jirka@5z.com>
1445 * src/main.c: --no-gnu option to completely disable any use
1446 of GNU C extentions. This is for those weird people that don't
1447 wish to use those extentions even with GNU C.
1449 Tue Jan 04 14:43:49 2000 George Lebl <jirka@5z.com>
1451 * src/main.c: use some GNU extentions (guarded with #ifdef __GNUC__)
1452 to make arguments fully typesafe, and to make it easier for
1453 GNU to optimize the aliases, as well as to avoid the ugly
1456 * src/main.c: don't put #line 0 for the .gob file for method prototypes
1458 * src/main.c: move the _priv structure freeing into finalize to enable
1459 people to work with the private stuff inside the destroy handler
1461 * src/main.c: use #line before every precondition check so that failed
1462 checks should point to the function prototype rather then into
1465 * src/main.c: remove the _END_ARG macro
1467 * src/main.c: add GOB_VERSION_MAJOR, GOB_VERSION_MINOR and
1468 GOB_VERSION_PATCHLEVEL defines into the generated C file
1470 * src/out.c: don't redundantly put #line for outfile if we're already
1473 * configure.in: raise version number
1475 Tue Jan 04 02:22:33 2000 George Lebl <jirka@5z.com>
1477 * src/main.c: add argument wrapper macros to make the argument system
1478 a little more type safe.
1480 Fri Dec 31 17:39:22 1999 George Lebl <jirka@5z.com>
1484 Thu Dec 30 20:20:36 1999 George Lebl <jirka@5z.com>
1486 * src/main.c: correctly handle the complex fundemental types,
1487 so that we can handle ALL the fundemental types for signals
1489 Thu Dec 30 19:29:56 1999 George Lebl <jirka@5z.com>
1491 * src/main.c: don't use function types for casts in marshallers,
1492 but default types we get from our GTK_TYPE_* -> C type translation,
1493 and use this fact to check for same function types and combine
1494 signal prototypes. This doesn't yet handle well complex types,
1495 but I have an idea how to make complex types work. Though
1496 I dunno if it's actually worth it.
1498 Thu Dec 30 17:18:27 1999 George Lebl <jirka@5z.com>
1500 * src/main.c: figure out some types from GTK types and cast properly
1501 when emitting a signal. This catches some inconsistencies in
1502 signal func argument lists and the GTK types of the arguments.
1504 Wed Dec 29 18:04:13 1999 George Lebl <jirka@5z.com>
1506 * src/parse.y: allow scope, public/private/protected, to come before
1507 the signal or virtual keyword for consistency's sake.
1509 Wed Dec 29 01:39:30 1999 George Lebl <jirka@5z.com>
1511 * src/{tree.[ch],parser.y}: cleanup scope stuff
1513 * src/{lexer.l,parser.y,tree.h,main.c}: add protected keyword and
1514 methods. protected methods are put into the -private files and
1515 are real exported functions just like public. protected data
1516 members act like pre-0.91.x private datamembers, that is they
1517 get stuck into the public header, but marked /* protected */.
1519 * src/main.c: change the method body printing function so that we
1520 can catch the no return warning properly and send us to the .gob
1521 file instead of the .c file.
1523 * src/{parse.y,main.c}: handle empty publics/privates/overrides
1524 and handle the body being set to ';' rather then '{}'
1526 * src/main.c: check for empty nonvoid regular methods, and error out
1527 on finding them as that would produce warnings which we can't catch
1528 and it is generally bad to do anyway
1530 * src/{parse.y,tree.[ch],main.c}: use char pointers for C buffers,
1531 and kill leading/trailing whitespace from them to make the C files
1532 nicer and easier to recognize empty functions.
1534 * src/main.c: add a --version switch
1536 * doc/gob.1.in: Update with the above changes
1538 * configure.in: raise version
1540 Tue Dec 28 20:49:56 1999 George Lebl <jirka@5z.com>
1542 * src/main.c: apply patch from ChiDeok Hwang <cdhwang@sr.hei.co.kr>
1543 to make the hack function static so that we don't pollute namespace
1545 Mon Dec 27 19:56:24 1999 George Lebl <jirka@5z.com>
1549 Mon Dec 27 03:00:25 1999 George Lebl <jirka@5z.com>
1551 * src/main.c: fixup PARENT_HANDLER to work well with non-void
1552 functions, the macro becomes an expression if the function is
1553 not void and returns the return of the parent or the onerror
1554 expression if the function pointer was NULL.
1556 Mon Dec 27 02:25:32 1999 George Lebl <jirka@5z.com>
1558 * src/parse.y: allow completely empty classes
1560 * src/main.c: don't add the ugly hack function if there are no
1563 Mon Dec 27 01:26:26 1999 George Lebl <jirka@5z.com>
1565 * src/parse.y: fixup the virtual rule as I forgot to shift the
1566 argument numbers when adding to the expression
1568 Mon Dec 27 01:07:14 1999 George Lebl <jirka@5z.com>
1570 * src/parse.y: add optional public keyword to virtuals and signals,
1571 (which doesn't do anything, only consistency). I should perhaps
1572 rewrite and simplify this part of the parser
1574 * src/lexer.l: fix a bug with empty braces producing a segfault
1575 on public and private methods
1577 * doc/gob.1.in: add a section about Constructor methods (init
1578 class_init) and fix init_class -> class_init
1580 * configure.in: raise version to 0.91.2
1582 Tue Dec 14 00:06:00 1999 George Lebl <jirka@5z.com>
1586 Mon Dec 13 23:25:06 1999 George Lebl <jirka@5z.com>
1588 * src/{main.c,out.c}: create a private header file and stick
1589 the private structure definition inside it. Add option
1590 --no-private-header for 0.91.0 behaviour and
1591 --always-private-header to force private header creation
1593 * doc/gob.1.in: update WRT above changes
1595 * examples/my-person.gob: include the private header
1599 Mon Dec 13 18:30:09 1999 George Lebl <jirka@5z.com>
1601 * src/main.c: don't print spurious #line's into the private
1604 * src/{main.c,tree.[ch],lexer.l,parse.y}: implement support for
1605 array types for data members and function arguments
1607 Mon Dec 13 00:48:47 1999 George Lebl <jirka@5z.com>
1611 Sun Dec 12 22:55:12 1999 George Lebl <jirka@5z.com>
1613 * doc/gob.1.in: added paragraph noting that private data members
1614 cannot be accessed above the class definition in the .gob file
1616 Sun Dec 12 22:08:31 1999 George Lebl <jirka@5z.com>
1618 * src/main.c: implement real private data members as promised in
1619 the documentation, this however breaks some compatiblity with
1620 things that already used the 'private' keyword for data members
1622 * doc/gob.1.in: document private data member stuff
1626 * src/main.c: a couple of sanity checks of the code to prevent weird
1627 errors on some broken .gob code
1629 * configure.in: update version to 0.91.0
1631 Sun Dec 05 14:20:26 1999 George Lebl <jirka@5z.com>
1633 * src/{lexer.l,main.c}: if we find the class header #include
1634 statement in a %{ %} section above class definition, don't
1635 include it ourselves.
1637 * doc/gob.1.in: remove the note about the include always first from
1638 BUGS, and make a new section for the include file.
1640 Thu Nov 25 13:09:08 1999 George Lebl <jirka@5z.com>
1644 Thu Nov 25 13:00:52 1999 George Lebl <jirka@5z.com>
1646 * src/main.c: don't error out on a symbol conflict if the types of
1647 the symbol node don't match (variable,method)
1649 Sat Nov 20 16:15:42 1999 George Lebl <jirka@5z.com>
1651 * src/main.c: add PARENT_HANDLER macro to make calling parent
1652 handlers in override functions easier
1654 Fri Nov 19 16:41:09 1999 George Lebl <jirka@5z.com>
1656 * src/main.c: add a type macro
1658 Thu Nov 18 22:56:09 1999 George Lebl <jirka@5z.com>
1660 * src/parse.y: add a warning check if the number of GTK types of
1661 a signal doesn't seem to be correct for the given number of
1664 Tue Nov 16 01:23:45 1999 George Lebl <jirka@5z.com>
1666 * src/main.c: support a "no-touch-headers" mode in which the
1667 headers are not touched unless they actually really changed,
1668 not on by default as it confuses automake
1670 Tue Nov 16 00:36:42 1999 George Lebl <jirka@5z.com>
1672 * src/{main.c,lexer.l,parser.y,out.c}: Implement a C++ mode, get
1673 rid of C++ errors/warnings when in C++ mode, and get rid of
1674 the 'this' pointer finally (it's been deprecated long enough)
1676 Mon Nov 15 23:45:37 1999 George Lebl <jirka@5z.com>
1678 * src/main.c: add prototype for the really bad hack function to
1681 Mon Nov 15 23:42:06 1999 George Lebl <jirka@5z.com>
1683 * src/main.c: generate correct function pointers in the structure
1684 for signals and virtuals. Also use a much nicer system instead
1685 of the method name defines, we now just set a bunch of static
1686 pointers, this removes a whole lot of headaches actually
1688 * doc/gob.1.in: repair to reflect the above (I removed the define
1691 Sun Nov 14 17:57:34 1999 George Lebl <jirka@5z.com>
1693 * doc/gob.1.in: repair some things that confused troff and add
1694 a C preprocessor warning to BUGS
1696 Sat Nov 13 17:22:49 1999 George Lebl <jirka@5z.com>
1698 * **/Makefile.am, configure.in: fix the conditional installation
1699 stuff, don't even go into the doc directory if we aren't installing
1701 Sat Nov 13 16:53:20 1999 George Lebl <jirka@5z.com>
1703 * doc/gob.1.in: describe BUGS better
1705 Sat Nov 13 16:20:41 1999 George Lebl <jirka@5z.com>
1707 * src/lexer.l: don't kill C++ style comments from C blocks
1709 Sat Nov 13 16:16:59 1999 George Lebl <jirka@5z.com>
1711 * src/{lexer.l,main.c,out.c}: fixed spurious newline printing, don't
1712 kill comments from C blocks so that line counts are right, accept
1713 newlines in strings, and don't take \'\"\' as a string delimiter
1715 Sat Nov 13 14:53:26 1999 George Lebl <jirka@5z.com>
1717 * src/main.c: don't add gtk_object_class to class_init if we only
1718 have non-GtkObject overrides to avoid warning
1720 Sat Nov 13 14:31:25 1999 George Lebl <jirka@5z.com>
1722 * configure.in,src/Makefile.am,doc/Makefile.am: check for
1723 ../NOINST_GOB and in case it's found don't install self
1725 Fri Nov 12 16:25:35 1999 George Lebl <jirka@5z.com>
1727 * configure.in,Makefile.am,src/main.c: don't use popt, our arguments
1728 are simple enough and popt doesn't seem to be widely used yet
1730 Sun Sep 05 22:08:40 1999 George Lebl <jirka@5z.com>
1734 Sun Sep 05 22:08:33 1999 George Lebl <jirka@5z.com>
1736 * doc/gob.1.in: updated for private virtual and signal wrappers
1738 Sun Sep 05 21:50:19 1999 George Lebl <jirka@5z.com>
1740 * configure.in: raise version and actually set POPT_LIB correctly
1742 * src/Makefile.am: use POPT_LIB
1744 Sun Sep 05 21:45:54 1999 George Lebl <jirka@5z.com>
1746 * src/tree.h,src/main.c,src/parse.y: add support for private signals
1749 * src/parse.y: fix bug with bogus vararg methods
1751 Sun Sep 04 17:44:37 1999 George Lebl <jirka@5z.com>
1755 Sat Sep 04 17:18:22 1999 George Lebl <jirka@5z.com>
1757 * src/lexer.l,src/parse.y,src/main.c,src/tree.[ch]: support
1758 variable arguments for public and private methods
1760 Sat Sep 04 16:51:11 1999 George Lebl <jirka@5z.com>
1762 * lexer.l,parse.y: accept const in parameter lists
1764 Sun Aug 29 13:46:33 1999 George Lebl <jirka@5z.com>
1768 Sat Aug 28 23:36:48 1999 George Lebl <jirka@5z.com>
1770 * src/main.[ch],parse.y: make error/warning reporting public
1771 and use it to report depreciated use of 'this'
1773 Sat Aug 28 22:41:52 1999 George Lebl <jirka@5z.com>
1775 * src/tree.[ch],parse.y,main.c: check for duplicate variables and
1776 signals and arguments as well.
1778 Sat Aug 28 22:00:19 1999 George Lebl <jirka@5z.com>
1780 * src/parse.y,src/main.c: change "this" to "self", but accept "this"
1783 * src/main.c: check for duplicate methods, and warn on non-public
1786 * configure.in: change to version 0.90.0
1788 * doc/gob.1.in: change this to self
1790 Tue Aug 24 20:37:26 1999 George Lebl <jirka@5z.com>
1794 Thu Aug 19 03:18:03 1999 George Lebl <jirka@5z.com>
1796 * src/main.c: also count overrides to avoid an unused variable on
1799 Thu Aug 19 03:08:49 1999 George Lebl <jirka@5z.com>
1801 * src/parse.y: in a check, we can check not only about numbers
1802 but for tokens as well
1804 Wed Aug 18 12:54:17 1999 George Lebl <jirka@5z.com>
1808 Tue Aug 17 22:24:47 1999 George Lebl <jirka@5z.com>
1810 * src/lexer.l,src/parse.y: don't use reserved words for check type
1813 * src/{lexer.l,parse.y,tree.[ch],main.c}: add #line's to output
1816 * src/out.[ch]: new functions for output so that we can easily add
1819 * src/main.c: fix get/set arguments
1821 * doc/gob.1.in: updated for newer version and spellchecked, also
1822 gob.1 is generated by configure now to get versions correct
1824 * gob.spec.in: added a spec file
1826 Fri Jul 30 02:19:05 1999 George Lebl <jirka@5z.com>
1828 * src/parse.y: accept simple char types
1830 * src/main.c: make prototypes look better, and don't output arg stuff
1831 when it won't be used
1833 * Makefile,src/Makefile: add test make target