X-Git-Url: http://git.draconx.ca/gitweb/gob-dx.git/blobdiff_plain/e10d6e307623d0952f6e1f5d9fee8720ddab4808..HEAD:/ChangeLog diff --git a/ChangeLog b/ChangeLog index f8eb15f..4e0b7e7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,494 +1 @@ -Mon Jan 24 22:52:47 2000 George Lebl - - * Release 0.92.2 - -Mon Jan 24 22:23:47 2000 George Lebl - - * src/main.c: add a protecting define before the object typedef - - * doc/gob.1.in: add docs for the new stuff - -Sun Jan 23 16:19:54 2000 George Lebl - - * src/{lexer.l,parse.y,tree.[ch],main.c}: make more types of header - %{ %} blocks, "headertop" and "privateheader" and made short as - well as long names possible. - - * src/main.c: add an --no-extern-c option to not put entern "C" into - the output, which is now put in by default even if --for-cpp is - on so that it is possible to call those from C by default - -Thu Jan 20 01:50:45 2000 George Lebl - - * src/main.c: put the _real_ functions in our normal private - namespace of ___* to be more consistent. - -Mon Jan 10 00:16:43 2000 George Lebl - - * src/{main.[ch],util.[ch],checks.[ch]}: offload some functionality to - extra files - - * src/main.c: cleanup the generation routine by spliting it up into - more functions - - * src/{main.h,lexer.l,parse.y,out.c}: put some needed externs into the - main.h file and include that rather then doing it in the .c files - -Thu Jan 06 18:33:44 2000 George Lebl - - * src/main.c: use ___ for the signal marshalling typedefs as well - -Thu Jan 06 17:32:46 2000 George Lebl - - * Release 0.92.1 - -Thu Jan 06 17:13:22 2000 George Lebl - - * src/main.c: be consistent with the use of "namespacing", we - prefix ALL internal gob stuff with "___". This should make it - easier to avoid name conflicts with user code and glibc/gcc (Which - seems to use __ prefix) - - * src/main.c: check for init and class_init names for non-constructor - methods and give an error if found. - - * src/main.c: check argument types and flags for correctness, error - on unknown type, but just a warning on unknown flag - - * doc/gob.1.in: add a section for name conflicts - -Wed Jan 05 02:23:21 2000 George Lebl - - * src/main.c: doh! the symbols for the aliases need to be declared as - static. - -Wed Jan 05 02:13:59 2000 George Lebl - - * src/main.c: just realized that args... for macros is a GNU - extention and so the PARENT_HANDLER no longer uses it, but prints - the argument names with __ prefixed into the argument list. - -Wed Jan 05 01:58:32 2000 George Lebl - - * src/main.c: if using gnu c, also define macros using varargs for - function aliases. This should allow the compiler to optimize - further and if we have arguments for the defines there are - no adverse side effects as there are for straight defines. - -Wed Jan 05 01:48:12 2000 George Lebl - - * src/main.c: fixup the aliases. They didn't actually work right. - now we set it up as a const pointer to a function using typeof. - -Tue Jan 04 17:57:55 2000 George Lebl - - * src/lexer.l: add support for 'requires x.y.z' line. This is - so that a .gob file can require at least version x.y.z of gob - - * src/test.gob: update - - * doc/gob.1.in: update for requires and run trhough ispell - -Tue Jan 04 17:10:54 2000 George Lebl - - * src/main.c: fix the non-gnu aliases - -Tue Jan 04 16:46:16 2000 George Lebl - - * src/{main.c,parser.y,tree.[ch]}: add optional C type specification - to arguments for full type safety - - * doc/gob.1.in: updated - -Tue Jan 04 15:34:16 2000 George Lebl - - * src/main.c: --no-gnu option to completely disable any use - of GNU C extentions. This is for those weird people that don't - wish to use those extentions even with GNU C. - -Tue Jan 04 14:43:49 2000 George Lebl - - * src/main.c: use some GNU extentions (guarded with #ifdef __GNUC__) - to make arguments fully typesafe, and to make it easier for - GNU to optimize the aliases, as well as to avoid the ugly - hack on GNU C. - - * src/main.c: don't put #line 0 for the .gob file for method prototypes - - * src/main.c: move the _priv structure freeing into finalize to enable - people to work with the private stuff inside the destroy handler - - * src/main.c: use #line before every precondition check so that failed - checks should point to the function prototype rather then into - generated file. - - * src/main.c: remove the _END_ARG macro - - * src/main.c: add GOB_VERSION_MAJOR, GOB_VERSION_MINOR and - GOB_VERSION_PATCHLEVEL defines into the generated C file - - * src/out.c: don't redundantly put #line for outfile if we're already - in the outfile - - * configure.in: raise version number - -Tue Jan 04 02:22:33 2000 George Lebl - - * src/main.c: add argument wrapper macros to make the argument system - a little more type safe. - -Fri Dec 31 17:39:22 1999 George Lebl - - * Release 0.92.0 - -Thu Dec 30 20:20:36 1999 George Lebl - - * src/main.c: correctly handle the complex fundemental types, - so that we can handle ALL the fundemental types for signals - -Thu Dec 30 19:29:56 1999 George Lebl - - * src/main.c: don't use function types for casts in marshallers, - but default types we get from our GTK_TYPE_* -> C type translation, - and use this fact to check for same function types and combine - signal prototypes. This doesn't yet handle well complex types, - but I have an idea how to make complex types work. Though - I dunno if it's actually worth it. - -Thu Dec 30 17:18:27 1999 George Lebl - - * src/main.c: figure out some types from GTK types and cast properly - when emitting a signal. This catches some inconsistencies in - signal func argument lists and the GTK types of the arguments. - -Wed Dec 29 18:04:13 1999 George Lebl - - * src/parse.y: allow scope, public/private/protected, to come before - the signal or virtual keyword for consistency's sake. - -Wed Dec 29 01:39:30 1999 George Lebl - - * src/{tree.[ch],parser.y}: cleanup scope stuff - - * src/{lexer.l,parser.y,tree.h,main.c}: add protected keyword and - methods. protected methods are put into the -private files and - are real exported functions just like public. protected data - members act like pre-0.91.x private datamembers, that is they - get stuck into the public header, but marked /* protected */. - - * src/main.c: change the method body printing function so that we - can catch the no return warning properly and send us to the .gob - file instead of the .c file. - - * src/{parse.y,main.c}: handle empty publics/privates/overrides - and handle the body being set to ';' rather then '{}' - - * src/main.c: check for empty nonvoid regular methods, and error out - on finding them as that would produce warnings which we can't catch - and it is generally bad to do anyway - - * src/{parse.y,tree.[ch],main.c}: use char pointers for C buffers, - and kill leading/trailing whitespace from them to make the C files - nicer and easier to recognize empty functions. - - * src/main.c: add a --version switch - - * doc/gob.1.in: Update with the above changes - - * configure.in: raise version - -Tue Dec 28 20:49:56 1999 George Lebl - - * src/main.c: apply patch from ChiDeok Hwang - to make the hack function static so that we don't pollute namespace - -Mon Dec 27 19:56:24 1999 George Lebl - - * Release 0.91.2 - -Mon Dec 27 03:00:25 1999 George Lebl - - * src/main.c: fixup PARENT_HANDLER to work well with non-void - functions, the macro becomes an expression if the function is - not void and returns the return of the parent or the onerror - expression if the function pointer was NULL. - -Mon Dec 27 02:25:32 1999 George Lebl - - * src/parse.y: allow completely empty classes - - * src/main.c: don't add the ugly hack function if there are no - methods - -Mon Dec 27 01:26:26 1999 George Lebl - - * src/parse.y: fixup the virtual rule as I forgot to shift the - argument numbers when adding to the expression - -Mon Dec 27 01:07:14 1999 George Lebl - - * src/parse.y: add optional public keyword to virtuals and signals, - (which doesn't do anything, only consistency). I should perhaps - rewrite and simplify this part of the parser - - * src/lexer.l: fix a bug with empty braces producing a segfault - on public and private methods - - * doc/gob.1.in: add a section about Constructor methods (init - class_init) and fix init_class -> class_init - - * configure.in: raise version to 0.91.2 - -Tue Dec 14 00:06:00 1999 George Lebl - - * Release 0.91.1 - -Mon Dec 13 23:25:06 1999 George Lebl - - * src/{main.c,out.c}: create a private header file and stick - the private structure definition inside it. Add option - --no-private-header for 0.91.0 behaviour and - --always-private-header to force private header creation - - * doc/gob.1.in: update WRT above changes - - * examples/my-person.gob: include the private header - - * NEWS: update - -Mon Dec 13 18:30:09 1999 George Lebl - - * src/main.c: don't print spurious #line's into the private - structure - - * src/{main.c,tree.[ch],lexer.l,parse.y}: implement support for - array types for data members and function arguments - -Mon Dec 13 00:48:47 1999 George Lebl - - * Release 0.91.0 - -Sun Dec 12 22:55:12 1999 George Lebl - - * doc/gob.1.in: added paragraph noting that private data members - cannot be accessed above the class definition in the .gob file - -Sun Dec 12 22:08:31 1999 George Lebl - - * src/main.c: implement real private data members as promised in - the documentation, this however breaks some compatiblity with - things that already used the 'private' keyword for data members - - * doc/gob.1.in: document private data member stuff - - * NEWS: update - - * src/main.c: a couple of sanity checks of the code to prevent weird - errors on some broken .gob code - - * configure.in: update version to 0.91.0 - -Sun Dec 05 14:20:26 1999 George Lebl - - * src/{lexer.l,main.c}: if we find the class header #include - statement in a %{ %} section above class definition, don't - include it ourselves. - - * doc/gob.1.in: remove the note about the include always first from - BUGS, and make a new section for the include file. - -Thu Nov 25 13:09:08 1999 George Lebl - - * Release 0.90.5 - -Thu Nov 25 13:00:52 1999 George Lebl - - * src/main.c: don't error out on a symbol conflict if the types of - the symbol node don't match (variable,method) - -Sat Nov 20 16:15:42 1999 George Lebl - - * src/main.c: add PARENT_HANDLER macro to make calling parent - handlers in override functions easier - -Fri Nov 19 16:41:09 1999 George Lebl - - * src/main.c: add a type macro - -Thu Nov 18 22:56:09 1999 George Lebl - - * src/parse.y: add a warning check if the number of GTK types of - a signal doesn't seem to be correct for the given number of - function arguments - -Tue Nov 16 01:23:45 1999 George Lebl - - * src/main.c: support a "no-touch-headers" mode in which the - headers are not touched unless they actually really changed, - not on by default as it confuses automake - -Tue Nov 16 00:36:42 1999 George Lebl - - * src/{main.c,lexer.l,parser.y,out.c}: Implement a C++ mode, get - rid of C++ errors/warnings when in C++ mode, and get rid of - the 'this' pointer finally (it's been deprecated long enough) - -Mon Nov 15 23:45:37 1999 George Lebl - - * src/main.c: add prototype for the really bad hack function to - avoid warning - -Mon Nov 15 23:42:06 1999 George Lebl - - * src/main.c: generate correct function pointers in the structure - for signals and virtuals. Also use a much nicer system instead - of the method name defines, we now just set a bunch of static - pointers, this removes a whole lot of headaches actually - - * doc/gob.1.in: repair to reflect the above (I removed the define - BUGS paragraph) - -Sun Nov 14 17:57:34 1999 George Lebl - - * doc/gob.1.in: repair some things that confused troff and add - a C preprocessor warning to BUGS - -Sat Nov 13 17:22:49 1999 George Lebl - - * **/Makefile.am, configure.in: fix the conditional installation - stuff, don't even go into the doc directory if we aren't installing - -Sat Nov 13 16:53:20 1999 George Lebl - - * doc/gob.1.in: describe BUGS better - -Sat Nov 13 16:20:41 1999 George Lebl - - * src/lexer.l: don't kill C++ style comments from C blocks - -Sat Nov 13 16:16:59 1999 George Lebl - - * src/{lexer.l,main.c,out.c}: fixed spurious newline printing, don't - kill comments from C blocks so that line counts are right, accept - newlines in strings, and don't take \'\"\' as a string delimiter - -Sat Nov 13 14:53:26 1999 George Lebl - - * src/main.c: don't add gtk_object_class to class_init if we only - have non-GtkObject overrides to avoid warning - -Sat Nov 13 14:31:25 1999 George Lebl - - * configure.in,src/Makefile.am,doc/Makefile.am: check for - ../NOINST_GOB and in case it's found don't install self - -Fri Nov 12 16:25:35 1999 George Lebl - - * configure.in,Makefile.am,src/main.c: don't use popt, our arguments - are simple enough and popt doesn't seem to be widely used yet - -Sun Sep 05 22:08:40 1999 George Lebl - - * Release 0.90.2 - -Sun Sep 05 22:08:33 1999 George Lebl - - * doc/gob.1.in: updated for private virtual and signal wrappers - -Sun Sep 05 21:50:19 1999 George Lebl - - * configure.in: raise version and actually set POPT_LIB correctly - - * src/Makefile.am: use POPT_LIB - -Sun Sep 05 21:45:54 1999 George Lebl - - * src/tree.h,src/main.c,src/parse.y: add support for private signals - and virtuals - - * src/parse.y: fix bug with bogus vararg methods - -Sun Sep 04 17:44:37 1999 George Lebl - - * Released 0.90.1 - -Sat Sep 04 17:18:22 1999 George Lebl - - * src/lexer.l,src/parse.y,src/main.c,src/tree.[ch]: support - variable arguments for public and private methods - -Sat Sep 04 16:51:11 1999 George Lebl - - * lexer.l,parse.y: accept const in parameter lists - -Sun Aug 29 13:46:33 1999 George Lebl - - * Release 0.90.0 - -Sat Aug 28 23:36:48 1999 George Lebl - - * src/main.[ch],parse.y: make error/warning reporting public - and use it to report depreciated use of 'this' - -Sat Aug 28 22:41:52 1999 George Lebl - - * src/tree.[ch],parse.y,main.c: check for duplicate variables and - signals and arguments as well. - -Sat Aug 28 22:00:19 1999 George Lebl - - * src/parse.y,src/main.c: change "this" to "self", but accept "this" - as well - - * src/main.c: check for duplicate methods, and warn on non-public - "new" method - - * configure.in: change to version 0.90.0 - - * doc/gob.1.in: change this to self - -Tue Aug 24 20:37:26 1999 George Lebl - - * Release 0.0.4 - -Thu Aug 19 03:18:03 1999 George Lebl - - * src/main.c: also count overrides to avoid an unused variable on - class_init - -Thu Aug 19 03:08:49 1999 George Lebl - - * src/parse.y: in a check, we can check not only about numbers - but for tokens as well - -Wed Aug 18 12:54:17 1999 George Lebl - - * Released 0.0.3 - -Tue Aug 17 22:24:47 1999 George Lebl - - * src/lexer.l,src/parse.y: don't use reserved words for check type - last first and null - - * src/{lexer.l,parse.y,tree.[ch],main.c}: add #line's to output - files - - * src/out.[ch]: new functions for output so that we can easily add - #line's to files - - * src/main.c: fix get/set arguments - - * doc/gob.1.in: updated for newer version and spellchecked, also - gob.1 is generated by configure now to get versions correct - - * gob.spec.in: added a spec file - -Fri Jul 30 02:19:05 1999 George Lebl - - * src/parse.y: accept simple char types - - * src/main.c: make prototypes look better, and don't output arg stuff - when it won't be used - - * Makefile,src/Makefile: add test make target - +Stub changelog, see the git history for changes.