1 Sun Feb 25 17:17:46 2001 George Lebl <jirka@5z.com>
5 Sun Feb 25 16:57:45 2001 George Lebl <jirka@5z.com>
7 * src/main.c, src/checks.c: to make doing BonoboXObjects possible
8 allow overriding the _get_type function.
10 * doc/gob.1.in: document the above
12 Sun Feb 11 16:33:07 2001 George Lebl <jirka@5z.com>
16 Sat Feb 10 18:42:59 2001 George Lebl <jirka@5z.com>
18 * src/Makefile.am: fix the build
20 2001-02-08 Maciej Stachowiak <mjs@eazel.com>
22 * src/Makefile.am: Remove BUILT_SOURCES stuff; Automake knows how
23 to handle .l and .y files directly, and including the .c files as
24 well was making it fail to link as it would try to link in lexer.o
27 Thu Feb 08 02:43:22 2001 George Lebl <jirka@5z.com>
29 * src/main.c: add signal connection typesafety macros
31 * src/test.gob, doc/gob.1.in: new stuff foo
33 * configure.in: raise version
35 Thu Feb 08 01:42:52 2001 George Lebl <jirka@5z.com>
37 * src/Makefile.am: rule for parse.h includes parse.c, and
38 SOURCES include BUILT_SOURCES
40 Tue Dec 26 11:03:44 2000 George Lebl <jirka@5z.com>
42 * src/main.c: Remove ## from the varargs macro stuff, as it's not
43 needed and causes trouble for newer gcc's (like in rh7)
45 Sun Sep 10 18:04:07 2000 George Lebl <jirka@5z.com>
49 Fri Sep 01 03:45:30 2000 George Lebl <jirka@5z.com>
51 * src/main.c: add G_GNUC_CONST to the _get_type function
53 Wed Aug 23 15:05:40 2000 George Lebl <jirka@5z.com>
55 * src/main.c: when a method has no arguments make an argumentless
56 macro for the shortform to avoid a parse error
58 * src/test.gob: add a test for the above
60 Sun Aug 6 22:21:38 2000 Eskil Heyn Olsen <eskil@eazel.com>
62 * gob.m4 now defaults to WARN instead of ERROR on missing
65 Tue Jul 25 16:54:34 2000 George Lebl <jirka@5z.com>
69 * configure.in: raise version to 1.0.4
71 * src/main.c: fixup the -anal macro patch.
73 * src/util.[ch], src/main.c: constize (not in 1.0.4)
75 * src/main.c: the short form pointers unified for both gnu and non-gnu
78 Sun Jul 23 18:51:45 2000 George Lebl <jirka@5z.com>
80 * src/util.[ch], src/main.c, src/checks.c, src/lexer.l, src/parse.y:
81 make new cleaner error print routines including a printfstyle one.
82 Use the get_real_id on all method ids even for overrides. When a
83 signal is added there is also a sizeof check for the signature vs.
84 argument list with a g_error if it fails. Fix %at{ %} to not
85 appear twice in all files.
87 * src/main.c: Apply patch from Arturo Tena to make things compile
88 nicely with gcc's -ansi -pedantic
90 * src/out.[ch]: constize correctly and use G_GNUC_PRINTF macro for
93 Fri Jul 21 15:38:10 2000 George Lebl <jirka@5z.com>
95 * src/main.c: store the private structure pointer so that we
96 don't look inside the freed object structureafter finalize
98 Thu Jul 06 02:32:29 2000 George Lebl <jirka@5z.com>
102 Wed Jul 05 19:37:20 2000 George Lebl <jirka@5z.com>
104 * src/{main.c,parse.y}: couple of cleanups, and fixup the gtk 1.3
107 Wed Jul 05 18:57:13 2000 George Lebl <jirka@5z.com>
109 * src/{checks.c, main.c, parse.y, test.gob}: Apply and fix up patch
110 from Bas van der Linden <linden@win.tue.nl> that adds the ability
111 to use const on the "self" argument as well. Also adds a CONST
112 casting macro to use.
114 * src/main.c: Fix a memory leak when destroy wasn't overriden and
115 destructors were added, it now properly calls the parent handler.
118 * src/main.c: Spit out some macro magic foo to hopefully make it
119 possible to compile objects with GTK+ 1.3/2.0
121 * doc/gob.1.in, examples/*.gob: We should never do
122 GTK_OBJECT(GET_NEW) as that's a memory leak due to some weird
123 GTK_OBJECT() semantics
125 Fri Jun 30 14:08:53 2000 George Lebl <jirka@5z.com>
129 Fri Jun 30 13:11:05 2000 George Lebl <jirka@5z.com>
131 * doc/gob.1.in: add doc for --always-private-struct
133 * src/main.c: fix output of --help. Also print __GOB_FUNCTION__
134 for inits and for get/set_arg. And print the get_real_id to
135 avoid the underscore.
137 Mon Jun 26 00:06:45 2000 George Lebl <jirka@5z.com>
139 * src/parse.y: for stringlink, dup the string on argument
142 * doc/gob.1.in: update documentation to the above change
144 Sun Jun 25 03:34:02 2000 George Lebl <jirka@5z.com>
146 * src/treefuncs.def, src/main.c, src/utils.[ch], src/parse.y: sane
147 parsing of const. Get rid of "stars" integer and just use a
148 "pointer" string. Also the types in general are more sanely parsed,
149 thus recognizing hopefully all legal (and some illegal) C types.
151 * src/checks.[ch], src/main.c: checks the argument type to be one we can
154 * src/treefuncs.def, src/main.c, src/parse.y, src/lexer.l: Apply
155 patch from Bas van der Linden <linden@win.tue.nl> that adds the
156 possibility to use chunks to allocate objects.
158 * src/main.c: Apply patch from Bas van der Linden <linden@win.tue.nl>
159 to add a __GOB_FUNCTION__ define to each function
161 * src/Makefile.am, src/main.c, src/lexer.l, src/generate_treefuncs.pl:
162 avoid and fix warnings, and compile with all warnings
164 * src/main.[ch]: add an --always-private-struct option to always put
165 in the private pointer, even if there are no private members.
167 * src/test.gob: add some more tests for new stuff
169 Wed Jun 07 15:03:18 2000 George Lebl <jirka@5z.com>
173 Wed Jun 07 14:41:24 2000 George Lebl <jirka@5z.com>
175 * configure.in, doc/gob.1.in: updates
177 Mon Jun 05 12:10:46 2000 George Lebl <jirka@5z.com>
179 * doc/gob.1.in: run through ispell, and fix option stuff to produce
180 nicer html output with groff
182 Thu Jun 01 18:12:13 2000 George Lebl <jirka@5z.com>
184 * src/main.c: Make the private header switches work again.
186 Wed May 31 01:50:25 2000 George Lebl <jirka@5z.com>
190 Wed May 31 01:47:23 2000 George Lebl <jirka@5z.com>
192 * src/gob.1.in: documentation of makefile rules for gob.
194 Tue May 30 11:02:36 2000 George Lebl <jirka@5z.com>
196 * src/lexer.l: Accept identifiers in array dimensions, this is so
197 that you can make these some constants.
199 Sat May 20 18:22:33 2000 George Lebl <jirka@5z.com>
203 Sat May 20 18:22:23 2000 George Lebl <jirka@5z.com>
205 * src/{main.c,checks.[ch]}: check for duplicate overrides, it is
206 different from checking symbol names as they don't conflict with
207 other symbols AND they only conflict if both the name and their
210 Sat May 20 16:38:06 2000 George Lebl <jirka@5z.com>
212 * src/{main.[ch],util.[ch],checks.c}: Add underscore removal for
213 non-override methods. This means that local aliases will include
214 prepended underscores, but when the full name is generated, or
215 when the method name is added to class structure, the underscore
218 * src/checks.c: overrides no longer checked for uniqueness, a more
219 complex logic is needed.
221 * src/{main.c,treefuncs.def,parse.y}: override naming is done
222 with a unique id, so that we handle cases where two classes have
223 the same method name.
225 * doc/gob.1.in: update for the above.
227 Sat May 20 14:42:00 2000 George Lebl <jirka@5z.com>
229 * src/main.c: the private structure is now freed in finalize again and
230 thus do the same dance around finalize as we do around destroy.
231 Clean up some code. NULL all things being destroyed. The arbitary
232 destructor uses memset as those things might not be just pointers.
234 Thu May 11 23:48:44 2000 George Lebl <jirka@5z.com>
236 * src/main.[ch]: provide the Self and SelfClass typedefs in addition
237 to SELF, IS_SELF, SELF_CLASS macros. All of these can now be
238 disabled with the --no-self-alias option
240 * doc/gob.1.in: update
242 * configure.in: raise version
244 Tue May 09 23:18:16 2000 George Lebl <jirka@5z.com>
246 * src/parse.y: fix segfault on parse error and give better error
249 Tue May 09 21:54:10 2000 George Lebl <jirka@5z.com>
251 * doc/gob.1.in, src/main.c: Add destruction code into the destroy
252 handler rather then finalize. Setup an extra function if
253 neccessary to handle returns correctly as this must be called
256 Sat Apr 29 14:41:42 2000 George Lebl <jirka@5z.com>
260 Sat Apr 29 14:40:40 2000 George Lebl <jirka@5z.com>
262 * src/checks.c: code prettification
264 * src/lexer.l, src/parse.y, src/test.gob: change "class" scope to
265 "classwide" scope, not to overload the class keyword
267 * src/main.[ch]: make private header files be generated by default,
268 and cleanup that part a bit
270 * doc/gob.1.in: add documentation of classwide
274 Fri Apr 21 17:15:09 2000 George Lebl <jirka@5z.com>
276 * src/main.c: add spaces after commas
278 * src/lexer.l, src/main.c, src/parse.y: add class scope variables
279 which are put into the class structure
281 * src/test.gob: added a test for class variables
283 * src/treefuncs.def: added CLASS_SCOPE
285 * src/treefuncs.h: regenerated
287 Mon Apr 17 20:13:47 2000 George Lebl <jirka@5z.com>
289 * src/parse.y: on objectlink instead of just ref, do ref/sink.
291 Sat Apr 15 23:07:30 2000 George Lebl <jirka@5z.com>
295 Sat Apr 15 22:42:20 2000 George Lebl <jirka@5z.com>
297 * src/main.c: fixes for ANSI C and C++. Just use GTK_VALUE_POINTER
298 instead of GTK_VALUE_OBJECT so that we don't have to cast and don't
301 Sat Apr 15 22:09:49 2000 George Lebl <jirka@5z.com>
303 * src/main.c: use the generic return type in signal marshallers
304 rather then the specific one as the marshallers are truly generic
306 Sat Apr 15 21:52:52 2000 George Lebl <jirka@5z.com>
308 * src/main.c: fix some typesafety braindamages with OBJECT types
309 in arguments by casting GTK_VALUE_OBJECT to gpointer. Also
310 for seting arguments cast the ARG to atype if it exists
312 Wed Apr 05 13:42:28 2000 George Lebl <jirka@5z.com>
314 * src/parse.y: never allow NONE to be used as one of many arguments,
315 always only by itself in the argument list
317 * src/main.c: When printing out the signal marshaller prototype,
318 don't print out the NONE (void) into the argument list, thanks
319 to Soeren Sandmann <sandmann@daimi.au.dk> for reporting that
321 Mon Apr 03 13:07:33 2000 George Lebl <jirka@5z.com>
323 * examples/Makefile.am: add my-person2.gob to EXTRA_DIST
325 Sun Apr 02 18:09:40 2000 George Lebl <jirka@5z.com>
329 Sun Apr 02 17:38:12 2000 George Lebl <jirka@5z.com>
331 * src/Makefile.am: ass the .pl and .def file to EXTRA_DIST
333 Sun Apr 2 14:37:49 PDT 2000 Manish Singh <yosh@gimp.org>
335 * configure.in: check for treefuncs.h instead of tree.h, since
336 the latter has gone bye-bye
338 Sat Apr 01 23:27:47 2000 George Lebl <jirka@5z.com>
340 * doc/gob.1.in: add documentation for defreturn
342 Sat Apr 01 18:03:31 2000 George Lebl <jirka@5z.com>
344 * src/{treefuncs.(def|c|h),generate_treefuncs.pl}: What would gob
345 be without some automatically generated code. The tree.[ch] was
346 hard to keep up and didn't have free/copy so these do, otherwise
347 it is the same. Also added a defreturn field to methods
349 * src/*.[cyl]: include treefuncs.h rather then tree.h
351 * src/{parse.y,lexer.l,main.c}: use the defreturn as the default for
352 return values of signals and virtual methods. If this is not
353 defined use the onerror or failing that '0'. onerror is also not
354 a reserved keyword anymore
356 * configure.in: raise version
358 Mon Mar 27 13:08:01 2000 George Lebl <jirka@5z.com>
362 Mon Mar 27 12:04:22 2000 George Lebl <jirka@5z.com>
364 * src/util.[ch], src/main.c: figure out if we really need the special
365 types, also make a hash for the gtk types instead of linear
366 searching it all the time.
368 * src/{lexer.c,checks.c,main.c}: minor fixes and cleanups
370 2000-03-21 Eskil Heyn Olsen <deity@eskil.dk>
372 * gob.m4: do not default GOB to no when not found (did that make
374 And better error message.
376 Mon Mar 20 14:35:35 2000 George Lebl <jirka@5z.com>
378 * src/lexer.l: handle single word typenames with an empty namespace
380 Sun Mar 05 02:23:04 2000 George Lebl <jirka@5z.com>
382 * src/main.c: add #lines around setting default handlers
384 * src/parse.y: fix line number for 'destroywith' destructors
386 Sat Mar 04 15:33:18 2000 George Lebl <jirka@5z.com>
388 * src/checks.c: duplicate name test for arguments and signals is
389 case insensitive now as those could cause trouble
391 Mon Feb 28 02:45:27 2000 George Lebl <jirka@5z.com>
395 Sun Feb 27 20:59:45 2000 George Lebl <jirka@5z.com>
397 * src/parse.y,doc/gob.1.in: For stringlink, just return a pointer on
398 get rather then strduping as that is 1) consistent with objectlink
399 and 2) more flexible.
401 Sun Feb 27 20:38:19 2000 George Lebl <jirka@5z.com>
403 * src/{main.c,tree.[ch],parse.y}: add the arbitrary destruction handler
406 * doc/gob.1.in: updated and fixed up
408 * configure.in,NEWS,examples/{README,my-person2.gob}: change version
411 Sun Feb 27 18:37:57 2000 George Lebl <jirka@5z.com>
413 * NEWS,doc/gob.1.in,examples/{README,my-person.gob,my-person2.gob}:
414 update of docs and examples to include the new features and minor
417 Sun Feb 27 04:41:41 2000 George Lebl <jirka@5z.com>
419 * src/main.c: make the output nicer for classes with no methods
420 better typechecking in get/set_arg, fix a couple of C++ issues,
422 * src/{main.c,parse.y,tree.[ch]}: automatic linking of arguments to
423 data members. Also alow empty statements inside a class. Also
424 add automatic data member destruction for pointer data, and
425 automatic initialization for any data member.
427 * src/main.[ch],src/out.c: add --no-lines which inhibits printing
428 of #line things to output files
430 * doc/gob.1.in: update for the above
432 Fri Feb 25 15:21:47 2000 George Lebl <jirka@5z.com>
436 Fri Feb 25 14:46:51 2000 George Lebl <jirka@5z.com>
438 * src/main.c: add SELF casting macros
440 * doc/gob.1.in: document the above
442 Fri Feb 25 02:29:26 2000 George Lebl <jirka@5z.com>
444 * src/main.c,src/tree.[ch],src/parse.y: public signals get
445 GTK_RUN_ACTION added. Plus an interface for adding additional
448 * doc/gob.1.in: add docs for the above
450 Fri Feb 25 01:37:20 2000 George Lebl <jirka@5z.com>
452 * src/main.c: fix trailing comma on the end of the argument enum
454 Sun Feb 13 23:54:53 2000 George Lebl <jirka@5z.com>
456 * doc/gob.1.in: add doc patch from Dave Dunkin <dunkind@letu.edu>
458 * doc/gob.1.in,examples/*.gob: use init(self) to be more consistent
461 Sat Feb 12 14:42:15 2000 George Lebl <jirka@5z.com>
463 * src/main.c,src/lexer.l: apply patches from Dave Dunkin
464 <dunkind@letu.edu> to add all and alltop ccode sections
465 and to add a --no-write,-n option to not actually write
466 any files. Also did some very cosmetic changes to code
468 Mon Feb 07 23:45:04 2000 George Lebl <jirka@5z.com>
470 * src/main.c: use the magic /*< private >*/ and /*< public >*/
471 comments to distinguish public and protected data members
473 Mon Feb 07 03:02:48 2000 George Lebl <jirka@5z.com>
477 Mon Feb 07 02:50:11 2000 George Lebl <jirka@5z.com>
479 * src/lexer.l: error on multiple classes
481 * src/main.c: nicer header output
483 * src/{lexer.l,main.c}: Eat out gtk-doc like inline doc entries
484 and stuff them into the output files where appropriate
486 * doc/gob.1.in: added docs for gtk-doc like inline doc stuff
488 * examples/{README, gtk-button-count.gob}: added inline docs
490 Fri Feb 04 01:07:54 2000 George Lebl <jirka@5z.com>
492 * src/main.c: use G_GNUC_UNUSED rather then our own macro for a
493 very slightly cleaner looking output file
495 2000-01-31 Eskil Heyn Olsen <deity@eskil.dk>
497 * gob.m4: checks for gob binary, GOB_CHECK([version [,
498 action_if_found[, action_if_not_found]]]).
500 * Makefile.am: Install gob in $prefix/share/aclocal
502 Thu Jan 27 17:50:11 2000 George Lebl <jirka@5z.com>
504 * src/main.c: add #include <stdlib.h>
506 Mon Jan 24 22:52:47 2000 George Lebl <jirka@5z.com>
510 Mon Jan 24 22:23:47 2000 George Lebl <jirka@5z.com>
512 * src/main.c: add a protecting define before the object typedef
514 * doc/gob.1.in: add docs for the new stuff
516 Sun Jan 23 16:19:54 2000 George Lebl <jirka@5z.com>
518 * src/{lexer.l,parse.y,tree.[ch],main.c}: make more types of header
519 %{ %} blocks, "headertop" and "privateheader" and made short as
520 well as long names possible.
522 * src/main.c: add an --no-extern-c option to not put entern "C" into
523 the output, which is now put in by default even if --for-cpp is
524 on so that it is possible to call those from C by default
526 Thu Jan 20 01:50:45 2000 George Lebl <jirka@5z.com>
528 * src/main.c: put the _real_ functions in our normal private
529 namespace of ___* to be more consistent.
531 Mon Jan 10 00:16:43 2000 George Lebl <jirka@5z.com>
533 * src/{main.[ch],util.[ch],checks.[ch]}: offload some functionality to
536 * src/main.c: cleanup the generation routine by spliting it up into
539 * src/{main.h,lexer.l,parse.y,out.c}: put some needed externs into the
540 main.h file and include that rather then doing it in the .c files
542 Thu Jan 06 18:33:44 2000 George Lebl <jirka@5z.com>
544 * src/main.c: use ___ for the signal marshalling typedefs as well
546 Thu Jan 06 17:32:46 2000 George Lebl <jirka@5z.com>
550 Thu Jan 06 17:13:22 2000 George Lebl <jirka@5z.com>
552 * src/main.c: be consistent with the use of "namespacing", we
553 prefix ALL internal gob stuff with "___". This should make it
554 easier to avoid name conflicts with user code and glibc/gcc (Which
555 seems to use __ prefix)
557 * src/main.c: check for init and class_init names for non-constructor
558 methods and give an error if found.
560 * src/main.c: check argument types and flags for correctness, error
561 on unknown type, but just a warning on unknown flag
563 * doc/gob.1.in: add a section for name conflicts
565 Wed Jan 05 02:23:21 2000 George Lebl <jirka@5z.com>
567 * src/main.c: doh! the symbols for the aliases need to be declared as
570 Wed Jan 05 02:13:59 2000 George Lebl <jirka@5z.com>
572 * src/main.c: just realized that args... for macros is a GNU
573 extention and so the PARENT_HANDLER no longer uses it, but prints
574 the argument names with __ prefixed into the argument list.
576 Wed Jan 05 01:58:32 2000 George Lebl <jirka@5z.com>
578 * src/main.c: if using gnu c, also define macros using varargs for
579 function aliases. This should allow the compiler to optimize
580 further and if we have arguments for the defines there are
581 no adverse side effects as there are for straight defines.
583 Wed Jan 05 01:48:12 2000 George Lebl <jirka@5z.com>
585 * src/main.c: fixup the aliases. They didn't actually work right.
586 now we set it up as a const pointer to a function using typeof.
588 Tue Jan 04 17:57:55 2000 George Lebl <jirka@5z.com>
590 * src/lexer.l: add support for 'requires x.y.z' line. This is
591 so that a .gob file can require at least version x.y.z of gob
593 * src/test.gob: update
595 * doc/gob.1.in: update for requires and run trhough ispell
597 Tue Jan 04 17:10:54 2000 George Lebl <jirka@5z.com>
599 * src/main.c: fix the non-gnu aliases
601 Tue Jan 04 16:46:16 2000 George Lebl <jirka@5z.com>
603 * src/{main.c,parser.y,tree.[ch]}: add optional C type specification
604 to arguments for full type safety
606 * doc/gob.1.in: updated
608 Tue Jan 04 15:34:16 2000 George Lebl <jirka@5z.com>
610 * src/main.c: --no-gnu option to completely disable any use
611 of GNU C extentions. This is for those weird people that don't
612 wish to use those extentions even with GNU C.
614 Tue Jan 04 14:43:49 2000 George Lebl <jirka@5z.com>
616 * src/main.c: use some GNU extentions (guarded with #ifdef __GNUC__)
617 to make arguments fully typesafe, and to make it easier for
618 GNU to optimize the aliases, as well as to avoid the ugly
621 * src/main.c: don't put #line 0 for the .gob file for method prototypes
623 * src/main.c: move the _priv structure freeing into finalize to enable
624 people to work with the private stuff inside the destroy handler
626 * src/main.c: use #line before every precondition check so that failed
627 checks should point to the function prototype rather then into
630 * src/main.c: remove the _END_ARG macro
632 * src/main.c: add GOB_VERSION_MAJOR, GOB_VERSION_MINOR and
633 GOB_VERSION_PATCHLEVEL defines into the generated C file
635 * src/out.c: don't redundantly put #line for outfile if we're already
638 * configure.in: raise version number
640 Tue Jan 04 02:22:33 2000 George Lebl <jirka@5z.com>
642 * src/main.c: add argument wrapper macros to make the argument system
643 a little more type safe.
645 Fri Dec 31 17:39:22 1999 George Lebl <jirka@5z.com>
649 Thu Dec 30 20:20:36 1999 George Lebl <jirka@5z.com>
651 * src/main.c: correctly handle the complex fundemental types,
652 so that we can handle ALL the fundemental types for signals
654 Thu Dec 30 19:29:56 1999 George Lebl <jirka@5z.com>
656 * src/main.c: don't use function types for casts in marshallers,
657 but default types we get from our GTK_TYPE_* -> C type translation,
658 and use this fact to check for same function types and combine
659 signal prototypes. This doesn't yet handle well complex types,
660 but I have an idea how to make complex types work. Though
661 I dunno if it's actually worth it.
663 Thu Dec 30 17:18:27 1999 George Lebl <jirka@5z.com>
665 * src/main.c: figure out some types from GTK types and cast properly
666 when emitting a signal. This catches some inconsistencies in
667 signal func argument lists and the GTK types of the arguments.
669 Wed Dec 29 18:04:13 1999 George Lebl <jirka@5z.com>
671 * src/parse.y: allow scope, public/private/protected, to come before
672 the signal or virtual keyword for consistency's sake.
674 Wed Dec 29 01:39:30 1999 George Lebl <jirka@5z.com>
676 * src/{tree.[ch],parser.y}: cleanup scope stuff
678 * src/{lexer.l,parser.y,tree.h,main.c}: add protected keyword and
679 methods. protected methods are put into the -private files and
680 are real exported functions just like public. protected data
681 members act like pre-0.91.x private datamembers, that is they
682 get stuck into the public header, but marked /* protected */.
684 * src/main.c: change the method body printing function so that we
685 can catch the no return warning properly and send us to the .gob
686 file instead of the .c file.
688 * src/{parse.y,main.c}: handle empty publics/privates/overrides
689 and handle the body being set to ';' rather then '{}'
691 * src/main.c: check for empty nonvoid regular methods, and error out
692 on finding them as that would produce warnings which we can't catch
693 and it is generally bad to do anyway
695 * src/{parse.y,tree.[ch],main.c}: use char pointers for C buffers,
696 and kill leading/trailing whitespace from them to make the C files
697 nicer and easier to recognize empty functions.
699 * src/main.c: add a --version switch
701 * doc/gob.1.in: Update with the above changes
703 * configure.in: raise version
705 Tue Dec 28 20:49:56 1999 George Lebl <jirka@5z.com>
707 * src/main.c: apply patch from ChiDeok Hwang <cdhwang@sr.hei.co.kr>
708 to make the hack function static so that we don't pollute namespace
710 Mon Dec 27 19:56:24 1999 George Lebl <jirka@5z.com>
714 Mon Dec 27 03:00:25 1999 George Lebl <jirka@5z.com>
716 * src/main.c: fixup PARENT_HANDLER to work well with non-void
717 functions, the macro becomes an expression if the function is
718 not void and returns the return of the parent or the onerror
719 expression if the function pointer was NULL.
721 Mon Dec 27 02:25:32 1999 George Lebl <jirka@5z.com>
723 * src/parse.y: allow completely empty classes
725 * src/main.c: don't add the ugly hack function if there are no
728 Mon Dec 27 01:26:26 1999 George Lebl <jirka@5z.com>
730 * src/parse.y: fixup the virtual rule as I forgot to shift the
731 argument numbers when adding to the expression
733 Mon Dec 27 01:07:14 1999 George Lebl <jirka@5z.com>
735 * src/parse.y: add optional public keyword to virtuals and signals,
736 (which doesn't do anything, only consistency). I should perhaps
737 rewrite and simplify this part of the parser
739 * src/lexer.l: fix a bug with empty braces producing a segfault
740 on public and private methods
742 * doc/gob.1.in: add a section about Constructor methods (init
743 class_init) and fix init_class -> class_init
745 * configure.in: raise version to 0.91.2
747 Tue Dec 14 00:06:00 1999 George Lebl <jirka@5z.com>
751 Mon Dec 13 23:25:06 1999 George Lebl <jirka@5z.com>
753 * src/{main.c,out.c}: create a private header file and stick
754 the private structure definition inside it. Add option
755 --no-private-header for 0.91.0 behaviour and
756 --always-private-header to force private header creation
758 * doc/gob.1.in: update WRT above changes
760 * examples/my-person.gob: include the private header
764 Mon Dec 13 18:30:09 1999 George Lebl <jirka@5z.com>
766 * src/main.c: don't print spurious #line's into the private
769 * src/{main.c,tree.[ch],lexer.l,parse.y}: implement support for
770 array types for data members and function arguments
772 Mon Dec 13 00:48:47 1999 George Lebl <jirka@5z.com>
776 Sun Dec 12 22:55:12 1999 George Lebl <jirka@5z.com>
778 * doc/gob.1.in: added paragraph noting that private data members
779 cannot be accessed above the class definition in the .gob file
781 Sun Dec 12 22:08:31 1999 George Lebl <jirka@5z.com>
783 * src/main.c: implement real private data members as promised in
784 the documentation, this however breaks some compatiblity with
785 things that already used the 'private' keyword for data members
787 * doc/gob.1.in: document private data member stuff
791 * src/main.c: a couple of sanity checks of the code to prevent weird
792 errors on some broken .gob code
794 * configure.in: update version to 0.91.0
796 Sun Dec 05 14:20:26 1999 George Lebl <jirka@5z.com>
798 * src/{lexer.l,main.c}: if we find the class header #include
799 statement in a %{ %} section above class definition, don't
800 include it ourselves.
802 * doc/gob.1.in: remove the note about the include always first from
803 BUGS, and make a new section for the include file.
805 Thu Nov 25 13:09:08 1999 George Lebl <jirka@5z.com>
809 Thu Nov 25 13:00:52 1999 George Lebl <jirka@5z.com>
811 * src/main.c: don't error out on a symbol conflict if the types of
812 the symbol node don't match (variable,method)
814 Sat Nov 20 16:15:42 1999 George Lebl <jirka@5z.com>
816 * src/main.c: add PARENT_HANDLER macro to make calling parent
817 handlers in override functions easier
819 Fri Nov 19 16:41:09 1999 George Lebl <jirka@5z.com>
821 * src/main.c: add a type macro
823 Thu Nov 18 22:56:09 1999 George Lebl <jirka@5z.com>
825 * src/parse.y: add a warning check if the number of GTK types of
826 a signal doesn't seem to be correct for the given number of
829 Tue Nov 16 01:23:45 1999 George Lebl <jirka@5z.com>
831 * src/main.c: support a "no-touch-headers" mode in which the
832 headers are not touched unless they actually really changed,
833 not on by default as it confuses automake
835 Tue Nov 16 00:36:42 1999 George Lebl <jirka@5z.com>
837 * src/{main.c,lexer.l,parser.y,out.c}: Implement a C++ mode, get
838 rid of C++ errors/warnings when in C++ mode, and get rid of
839 the 'this' pointer finally (it's been deprecated long enough)
841 Mon Nov 15 23:45:37 1999 George Lebl <jirka@5z.com>
843 * src/main.c: add prototype for the really bad hack function to
846 Mon Nov 15 23:42:06 1999 George Lebl <jirka@5z.com>
848 * src/main.c: generate correct function pointers in the structure
849 for signals and virtuals. Also use a much nicer system instead
850 of the method name defines, we now just set a bunch of static
851 pointers, this removes a whole lot of headaches actually
853 * doc/gob.1.in: repair to reflect the above (I removed the define
856 Sun Nov 14 17:57:34 1999 George Lebl <jirka@5z.com>
858 * doc/gob.1.in: repair some things that confused troff and add
859 a C preprocessor warning to BUGS
861 Sat Nov 13 17:22:49 1999 George Lebl <jirka@5z.com>
863 * **/Makefile.am, configure.in: fix the conditional installation
864 stuff, don't even go into the doc directory if we aren't installing
866 Sat Nov 13 16:53:20 1999 George Lebl <jirka@5z.com>
868 * doc/gob.1.in: describe BUGS better
870 Sat Nov 13 16:20:41 1999 George Lebl <jirka@5z.com>
872 * src/lexer.l: don't kill C++ style comments from C blocks
874 Sat Nov 13 16:16:59 1999 George Lebl <jirka@5z.com>
876 * src/{lexer.l,main.c,out.c}: fixed spurious newline printing, don't
877 kill comments from C blocks so that line counts are right, accept
878 newlines in strings, and don't take \'\"\' as a string delimiter
880 Sat Nov 13 14:53:26 1999 George Lebl <jirka@5z.com>
882 * src/main.c: don't add gtk_object_class to class_init if we only
883 have non-GtkObject overrides to avoid warning
885 Sat Nov 13 14:31:25 1999 George Lebl <jirka@5z.com>
887 * configure.in,src/Makefile.am,doc/Makefile.am: check for
888 ../NOINST_GOB and in case it's found don't install self
890 Fri Nov 12 16:25:35 1999 George Lebl <jirka@5z.com>
892 * configure.in,Makefile.am,src/main.c: don't use popt, our arguments
893 are simple enough and popt doesn't seem to be widely used yet
895 Sun Sep 05 22:08:40 1999 George Lebl <jirka@5z.com>
899 Sun Sep 05 22:08:33 1999 George Lebl <jirka@5z.com>
901 * doc/gob.1.in: updated for private virtual and signal wrappers
903 Sun Sep 05 21:50:19 1999 George Lebl <jirka@5z.com>
905 * configure.in: raise version and actually set POPT_LIB correctly
907 * src/Makefile.am: use POPT_LIB
909 Sun Sep 05 21:45:54 1999 George Lebl <jirka@5z.com>
911 * src/tree.h,src/main.c,src/parse.y: add support for private signals
914 * src/parse.y: fix bug with bogus vararg methods
916 Sun Sep 04 17:44:37 1999 George Lebl <jirka@5z.com>
920 Sat Sep 04 17:18:22 1999 George Lebl <jirka@5z.com>
922 * src/lexer.l,src/parse.y,src/main.c,src/tree.[ch]: support
923 variable arguments for public and private methods
925 Sat Sep 04 16:51:11 1999 George Lebl <jirka@5z.com>
927 * lexer.l,parse.y: accept const in parameter lists
929 Sun Aug 29 13:46:33 1999 George Lebl <jirka@5z.com>
933 Sat Aug 28 23:36:48 1999 George Lebl <jirka@5z.com>
935 * src/main.[ch],parse.y: make error/warning reporting public
936 and use it to report depreciated use of 'this'
938 Sat Aug 28 22:41:52 1999 George Lebl <jirka@5z.com>
940 * src/tree.[ch],parse.y,main.c: check for duplicate variables and
941 signals and arguments as well.
943 Sat Aug 28 22:00:19 1999 George Lebl <jirka@5z.com>
945 * src/parse.y,src/main.c: change "this" to "self", but accept "this"
948 * src/main.c: check for duplicate methods, and warn on non-public
951 * configure.in: change to version 0.90.0
953 * doc/gob.1.in: change this to self
955 Tue Aug 24 20:37:26 1999 George Lebl <jirka@5z.com>
959 Thu Aug 19 03:18:03 1999 George Lebl <jirka@5z.com>
961 * src/main.c: also count overrides to avoid an unused variable on
964 Thu Aug 19 03:08:49 1999 George Lebl <jirka@5z.com>
966 * src/parse.y: in a check, we can check not only about numbers
967 but for tokens as well
969 Wed Aug 18 12:54:17 1999 George Lebl <jirka@5z.com>
973 Tue Aug 17 22:24:47 1999 George Lebl <jirka@5z.com>
975 * src/lexer.l,src/parse.y: don't use reserved words for check type
978 * src/{lexer.l,parse.y,tree.[ch],main.c}: add #line's to output
981 * src/out.[ch]: new functions for output so that we can easily add
984 * src/main.c: fix get/set arguments
986 * doc/gob.1.in: updated for newer version and spellchecked, also
987 gob.1 is generated by configure now to get versions correct
989 * gob.spec.in: added a spec file
991 Fri Jul 30 02:19:05 1999 George Lebl <jirka@5z.com>
993 * src/parse.y: accept simple char types
995 * src/main.c: make prototypes look better, and don't output arg stuff
996 when it won't be used
998 * Makefile,src/Makefile: add test make target