Tue Aug 18 04:40:17 1998 Tim Janik * glib.h: * gmessages.c: new function g_log_set_always_fatal() to set an additional fatal_mask for log levels that are considered to be fatal globally (required by gtk). since this mask is not domain-associated, it is restricted to the log levels, introduced by glib itself. * gmem.c: * grel.c: * gtree.c (g_tree_node_check): don't use g_print() calls for informational/debugging output, but log all this stuff through g_log() with G_LOG_LEVEL_INFO. libraries shouldn't use printf(), g_print() or g_printerr() at all. Tue Aug 18 02:46:44 1998 Tim Janik * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make `inline' a noop, since strict ANSI rules don't permit `inline'. Mon Aug 17 15:21:42 1998 Tim Janik * grel.c: made private functions static. Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to EXTRA_DIST * glib.spec: version = 1.1.3 Mon Aug 17 01:46:14 1998 Tim Janik * glib.m4: feature an extra MODULES parameter, so glib-config can be invoked with the "gmodule" argument. * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all g_return*_if_fail statements, and made them issue a message like "assertion `%s' failed". * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to g_log_find_domain. Sun Aug 16 20:28:27 1998 Tim Janik * version bump to 1.1.3, binary age 0, interface age 0. * glib.h: be nice to platforms that don't have gint64 and don't issue #warning on every compilation. since glib doesn't require gint64 itself, packages that need gint64 should test for this themselves. * glib.h: * gutils.c: added a new function g_vsnprintf(). Sun Aug 16 Elliot Lee glib.h: #error out if we don't recognize the SIZEOF_VOID_P #warning if no gint64 Fri Aug 14 16:41:53 1998 Tim Janik * glib.h: added static inline functions for bit mask tests: g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. Fri Aug 13 14:23:37 1998 Tim Janik * glib.h: * gmessages.c: revised the message handling system, which is now based on a new mechanism g_log*. most of the assertment macros got adapted to feature the new g_log() call with an additional specification of the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN is undefined upon the includion of glib.h, it'll be defined with a value of (NULL) and thus preserves the original bahaviour for warning and error messages. the message handler setting functions for g_warning, g_error and g_message are only provided for backwards compatibility and might get removed somewhen. * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain to "GLib" upon compilation. we currently have to add this definition to the DEFS variable. * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start of this file currently, since automake doesn't support per target _CFLAGS yet. * glib.h: changed some gints to gbooleans, made a few const corrections, removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some in other required places. * gnode.c: (g_node_prepend): (g_node_insert_before): (g_node_insert): (g_node_append_data): (g_node_prepend_data): (g_node_insert_data_before): (g_node_insert_data): (g_node_append): return (node), so these macros/functions can be usefully chained with g_node_new(). Mon Aug 10 17:56:11 PDT 1998 Manish Singh * glib.h: it's GTime now, and it's back! Mon Aug 10 02:17:19 1998 Tim Janik * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build last. we do this by making all-recursive-am depend on all-am. Sun Aug 9 15:56:11 1998 Tim Janik * configure.in: added GModule checks. generate files in gmodule/. * glib-config.in: support library specifications `glib' and `gmodule'. * Makefile.am: feature the gmodule/ subdir. Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson * Released GLib 1.1.2 Wed Aug 05 01:15:36 1998 George Lebl * testglib.c: fix 64-bitness in g_prints, sizeof doesn't seem to return int so I cast it for printing, probably just cosmetic Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson * Released GLib 1.1.1 Tue Aug 4 15:17:54 1998 Tim Janik * configure.in: version bump to 1.1.1, binary age 1, interface age 0. * NEWS: updates. * README: updates. * INSTALL: updates and fixes. * COPYING: include the GNU LGPL, rather than shipping an empty file. * AUTHORS: listed original authors here, and added people who made significant improvements to glib. * glib.h: * gutils.c: implement g_get_current_dir() which returns a newly allocated string, instead of a g_getcwd() variant that operates on a static buffer. export glib_interface_age and glib_binary_age. as a convenience, macro definitions have been added for g_node_insert_data, g_node_insert_data_before, g_node_append_data and g_node_prepend_data. * testglib.c: minor cleanups, print current dir. Mon Aug 3 16:02:26 1998 Tim Janik * glib.h: * gnode.c: change order of gpointer data; field in struct _GNode to be partly binary compatible with GList and GSList. 1998-08-03 Sebastian Wilhelmi * garray.c (g_ptr_array_remove_index): bugfix: index check for array has been wrong. Fri Jul 31 22:17:05 1998 Tim Janik * testglib.c (g_node_test): added a GNode test. Fri Jul 31 09:08:16 1998 Tim Janik * Makefile.am: compile gnode.c. * glib.h: * gnode.c: added implementation of n-way trees. * gtree.c (g_tree_traverse): added a warning to the switch() statement which says that G_LEVEL_ORDER is not implemented. Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson * Released GLib 1.1.0 Mon Jul 27 01:02:27 1998 Tim Janik * glib.h: #if 0'ed out the GTime definition, until it is definitively needed. #if 0'ed out the g_getcwd() version, because it is the wrong implementation. Sat Jul 25 16:09:00 1998 Mark Crichton * glib.h: gtime changed to g_time. gtime is used in /usr/include/time.h in NetBSD, causing multiple headaches. If this isn't the right way of fixing it.... ;) Thu Jul 23 00:29:14 1998 Tim Janik * glib.h: * gscanner.c: new functions to make a scanner scope sensitive wrt symbol lookups. g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and g_scanner_set_scope. g_scanner_add_symbol, g_scanner_remove_symbol and g_scanner_foreach_symbol are now aliases for scope 0. Mon Jul 20 23:05:34 1998 George Lebl * glib.h: typo fixed for alphas for gint64 Tue Jul 14 09:05:18 1998 Tim Janik * glib.h: * gutils.c: new fuction g_dirname() which returns a newlly allocated string. Fri Jul 10 06:33:43 1998 Tim Janik * glib.h: * gutils.h: added a bunch of utility/wrapper functions: g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). * gutils.c: removed all g_str* functions. * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this place. this file shall never include to avoid clashes for some of the g_str* functions on some OSes. Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko * glib.h: * ghash.c: Renamed g_hash_table_lookup_full to g_hash_table_lookup_extended to conform with naming conventions. Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko * glib.h: * ghash.c: Generic cleanup, added a function: (g_hash_table_lookup_full): Return whether the lookup succeeded, and also retrieve the key and value. This allows one to distinguish between failed lookup and finding a NULL, and also allows one to free a key in the hash. Mon Jul 6 10:12:05 PDT 1998 Manish Singh * ltconfig: fix for properly detecting shared lib support on SunPro cc (taken from libtool 1.2.a) Sat Jul 4 13:38:52 PDT 1998 Manish Singh * glib.h: added g_array_length Tue Jun 30 11:58:25 1998 Tim Janik * gscanner.c (g_scanner_unexp_token): take symbol_2_token into account. react on valid/invalid string pairs. Sat Jun 27 21:55:46 PDT 1998 Manish Singh * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't ours. ;) Fri Jun 19 03:11:02 1998 Tim Janik * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and g_dataset_retrive_key in favour of GQuarks. a GQuark is an numeric id wich is associated with a certain string. (g_quark_try_string): try to get the quark associated with this string, if the lookup failed return 0. (g_quark_from_string): get the associated quark for a string, if there isn't currently a GQuark associated with this string, then allocate a new quark and return that. (g_quark_from_static_string): like the above function, but the string isn't strdup()ed to save memory. (g_quark_to_string): get the string that is associated with a certain GQuark. * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function _after_ the new data has been setup. Thu Jun 18 02:35:21 1998 Owen Taylor * glib.h: Changed messages for g_return_[val]_if_fail to be somewhat more clear: assertion "blah" failed. 1998-06-18 Federico Mena Quintero * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler warnings. * grel.c: #include Fri Jun 12 15:39:06 1998 Tim Janik * glib.h (GScanner): cleanups of the structure fields (binary incompatible). Fri Jun 12 00:39:28 1998 Josh MacDonald * glib.h: add new hash and equal functions g_int_*. complement g_direct_hash with g_direct_equal. * grel.c: new file, GRelations implement tuples of N-N mappings. A comment in glib.h briefly describes the interface. * ghash.c: new function, g_hash_table_size * glib.h: new typedefs, gsize, gssize, gtime. * garray.c: new functions implementing a simplified GArray. This GPtrArray is an array of gpointers and has functions to add and remove elements, much like java.lang.Vector. * garray.c: new functions for the single-byte special case of GArray. The functions g_byte_array* operate on arrays of bytes. Internally, a GArray is used. * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... 1998-06-11 Federico Mena Quintero * gdataset.c: #include Thu Jun 11 04:15:31 1998 Tim Janik * glib.h: * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc sizes, to take up less space on initial allocation. 1998-06-10 Raja R Harinath * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, the version from which glib's libtool forked. Needed for people who use post-1.2 alphas of libtool. * configure.in (enable_mem_check, enable_mem_profile): Replace `echo -n' with AC_MSG_CHECKING. (fd_set): Explain test for `fd_set' better. Wed Jun 10 19:29:51 1998 Owen Taylor * Makefile.am glib.m4 configure.in: Moved out from GTK+; added AM_PATH_GLIB macro. Wed Jun 10 12:56:07 1998 Owen Taylor * glib.h: renamed g_const_pointer => gconstpointer Tue Jun 9 17:47:33 1998 Owen Taylor * glib.h: Remove #error - HP/UX. Sat May 23 19:00:01 1998 Owen Taylor [ Combination of: gtk-rrh-980412-0.patch (Raja R Harinath ) gtk-jbuhler-980516-0 (Jeremy Buhler ) ] * glib.h ghash.c gstring.c gdataset.c gutils.c: - Added new typedef g_const_pointer; expunged all incorrect uses of 'const gpointer'. - Fixed up warnings that that created, - Changed GHashFunc and GCompareFunc to take g_const_pointer arguments. (Necessary, but will cause warnings in existing code until fixed) - Added other new const in harmless positions. Mon Jun 8 01:06:47 1998 Tim Janik * glib.h: added enum-helper macros for code generation. added G_BREAKPOINT(). Sat Jun 6 14:09:22 PDT 1998 Manish Singh * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird problems Wed Jun 3 06:19:42 1998 Tim Janik * glib.h (g_chunk_new0): convenience macro, for allocating small chunks like g_chunk_new() with additional 0 initialization. Mon Jun 1 04:43:27 1998 Tim Janik * ghash.c (g_hash_table_insert): wrote a comment describing why a hash node's key should not also get replaced when overriding previous entries. Tue May 26 18:30:06 1998 Tim Janik * glib.h (g_string_sized_new): new function to controll the preallocated size of a GString. * glib.h (g_strreversed): new function to reverse a string. Mon May 18 22:14:39 1998 Owen Taylor (Yasuhiro SHIRASAKI : gtk-joke-980517-0.patch) * gutils.c: Restored a missing prototype for g_vsprintf. Wed May 20 05:02:26 1998 Tim Janik * glib.h: conditionally define NULL, FALSE and TRUE. (g_mem_chunk_create): new convenience macro as a short hand for g_mem_chunk_new(). (g_chunk_free): new convenience macro to be consistent with g_chunk_new. Tue, 19 May 1998 09:00:02 +0200 §Paolo Molaro * gcompletion.c: generic functions for completion... Sun May 17 10:48:27 1998 Tim Janik * gscanner.c (g_scanner_unexp_token): provide usefull default specifications for identifier_spec and symbol_spec. * glib.h: new functions g_slist_nth_data and g_list_nth_data to return the data of the nth element in the list. Fri May 15 22:31:49 1998 Tim Janik * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) that for some reason didn't produce a compiler wrning on my machine (is va_end undefined for i386?). Fri May 15 12:32:08 1998 rodo * gscanner.c: replaced some snprintf with g_snprintf Fri May 15 00:56:59 1998 Tim Janik * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, G_GNUC_NORETURN and G_GNUC_CONST. * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). (g_scanner_msg_handler): "\n" at end of line! (g_scanner_foreach_symbol): new function to iterate over the symbol table (GScanner does value-wrapping). Thu May 14 04:14:12 1998 Tim Janik * glib.h: typedef gint gboolean; this is needed to provide portability with big-endian platforms (e.g. try sizeof(bool) for c++ on big-endians - it's 4). this is also needed to maintain some_union.d_gint==some_union.d_gboolean. plus, gint to gboolean casts and vice versa need to be possible without loss. Tue May 12 19:22:58 1998 Owen Taylor * glib/glib.h: Added macros G[U]INT_TO_POINTER() and GPOINTER_TO_[U]INT for storing small integers integers inside pointers. * glib/testglib.c: Print sizeof() results as g_print("%ld", (glong)sizeof(foo)), to deal with size_t being long on Alpha's. Tue May 12 16:54:15 1998 Owen Taylor (James A : gtk-jamesa-980511-4.patch) * glib.h gstring.c gmessages.c: Added some missing const to arguments. * gutils.c (g_strsignal.c): Added missing return statements. Mon May 11 21:11:54 1998 Owen Taylor * gutils.c gmessages.c: Moved g_error, g_warning, g_message and g_print from gutils.c to new file gmessages.c, to avoid having to include in gutils.c which was causing problems for the g_strsignal implementation on FreeBSD boxes. Mon May 11 09:53:43 1998 Tim Janik * configure.in: preserve automake CFLAGS. * Makefile.am: fully rename the created library to libglib-1.1.la. this means we need to change certain portions of the Makefile.am on major/minor version bumps. * ltmain.sh: the -release option is not required anymore. * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, MIN, ABS and CLAMP, these macros might be screwed from other headers. Mon May 11 01:44:10 1998 Tim Janik * gdataset.c: new file, gdatasets implement the object data mechanism from GtkObject. a generic data pointer is associated with a certain location and a key id. Sat May 9 20:08:12 1998 Owen Taylor * glib/gmem.c: Experimentally restore GMemChunk to its primeval state - where mem areas are freed incrementally instead of searching the tree every time a mem area is completely empty. Also, always keep one mem chunk around. (Reduced calls to malloc() a lot, but doesn't really improve performance significiantly) Thu May 7 08:17:28 1998 Tim Janik * glib.h (G_GNUC_PRINTF): (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument checking of gcc. * gstring.c: const corrections, string!=NULL checks at function entry. (g_string_down): new function for tolower(3) conversion. (g_string_up): new function for toupper(3) conversion. * gutils.c: const corrections. (g_strdown): g_string_down() counterpart. (g_strup): g_string_up() counterpart. * gscanner.c (g_scanner_unexp_token): (g_scanner_error): (g_scanner_warn): new functions to let a scanner put out warnings or errors, especially to react on unexpected tokens. * gslist.c: (g_slist_index): find out about about the position of a certain data pointer. (g_slist_position): find out about about the position of a certain node. * glist.c: (g_list_index): find out about about the position of a certain data pointer. Thu May 7 05:14:19 1998 Tim Janik * ltmain.sh: added a new commandline flag -postfix similar to -release, but will immediately change the library name. * Makefile.am: specify -postfix and -version-info * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and GLIB_BINARY_AGE. calculate LT_* variables for libtool. Fri May 1 16:36:08 1998 Owen Taylor * gutils.c: (g_strcasecmp). Check for isupper before taking tolower, and account for macroized tolower. * gutils.c (g_error): Check for recursion. 1998-04-27 Elliot Lee * glist.c (g_list_position): New function to find the position of a link in a list - should be the inverse of g_list_nth(), but haven't tested it so poof. Thu Apr 30 21:41:30 1998 Owen Taylor * gstring.c : Check arguments more carefully, (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) Tue Apr 7 19:36:48 1998 Owen Taylor * gutils.c (g_direct_compare): Removed, because that's what a NULL comparison function means. And it wasn't 64 bit safe. Mon Apr 6 18:43:25 1998 Tim Janik * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats of the format ".xxx" to be parsed as "xxx". Fri Apr 3 20:36:35 1998 Owen Taylor * gutils.c (g_parse_debug_string): Make debug string parsine case-insensitive Fri Apr 3 17:03:18 PST 1998 Manish Singh * gstring.c: corrected possible overrun when inserting into GStrings (thanks Elrond) Fri Apr 3 18:05:45 1998 Owen Taylor * testglib.c: Removed literal german from strings to appease SGI compiler. Thu Mar 26 20:47:21 1998 Owen Taylor * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - use on_exit if atexit not found in definition of ATEXIT. Wed Mar 25 15:23:37 1998 Owen Taylor * Makefile.am: Switched glibconfig.h rule from HEADERS to DATA, so that it is not added to DISTFILES Wed Mar 18 22:27:08 PST 1998 Manish Singh * garray.c: g_rarray_truncate length done correctly Sun Mar 15 07:13:34 1998 Tim Janik * gutils.c: changed *_handler variables to be named glib_*_handler, so you can easily access them from gdb. Sat Mar 14 17:47:43 1998 Owen Taylor * Makefile.am: Don't refer to current directory as $(top_builddir) to avoid confusing non-gmakes Sat Mar 14 01:37:35 1998 Owen Taylor * Makefile.am (configincludedir): Moved glibconfig.h to $(pkglibdir)/include Tue Mar 10 02:03:12 1998 Tim Janik * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to free symbol table entries upon destruction (gtk-gronlund-980309-0.patch.gz). Mon Mar 9 15:02:21 1998 Tim Janik * glib.h: changed *_length functions to return guint. changed *_nth functions to take guint as argument. * glist.c: adapted g_list_length and g_list_length. * gslist.c: adapted g_slist_length and g_slist_length. Mon Mar 2 17:51:18 1998 Owen Taylor * glib.h gutils.c : changed g_strcasecmp to take gchar* not guchar* * testglib.c: Remove trailing ; after functions Sun Mar 1 19:04:40 1998 Owen Taylor * glib.h gstring.c: Added g_string_insert[_c]() and g_string_erase(). From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> Mon Feb 16 23:05:06 1998 Owen Taylor * glist.c (g_list_insert_sorted): Changed function so elements are always inserted, even if they compare equal with another. Thu Feb 12 22:48:11 1998 Owen Taylor * gstring.c glib.h: removed deprecated g_string_equal and g_string_hash. Tue Feb 10 13:04:36 1998 Owen Taylor * configure.in: Add check to see if the C library's iswalnum can actually be used. (Not true for Linux libc-5.4.38) Sat Feb 7 11:48:09 1998 Owen Taylor * gstring.c gutils.c: added some additional consts in appropriate places to remove a warning Sat Feb 7 11:15:54 1998 Owen Taylor * gutils.c: include for tolower() Fri Jan 30 23:57:17 PST 1998 Manish Singh * added and autoconfigured in a new utility function g_strcasecmp Wed Jan 28 23:53:27 PST 1998 Manish Singh * glist.c * gslist.c * testglib.c: the sort functions compared backwards. Fixed * glib.h: list iterator macros now check for NULL pointers Tue Jan 27 09:46:57 PST 1998 Manish Singh * gstring.c: g_string_prepend and g_string_prepend_c had interchanged src and dest parameters for g_memmove. Fixed. Tue Jan 27 01:38:52 PST 1998 Manish Singh * gslist.c: fixed a really, really lame error. g_slist_insert didn't hook the data in! Reworked the routine to reflect the functionality of g_list Wed Jan 21 01:13:25 1998 Tim Janik * Applied patch from (Raja R Harinath ) to add function g_snprintf. * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. * glib.h: Add prototype for g_snprintf. * glibconfig.h.in: Add HAVE_VSNPRINTF. * gutils.c (g_snprintf): new function. Sat Jan 17 23:52:40 1998 Owen Taylor * gstring.{c,h} gscanner.c: renamed g_string_equal => g_str_equal renamed g_string_hash => g_str_hash And const corrected. Old functions left in for now. Fri Jan 9 20:03:46 1998 Tim Janik * gutils.c (g_strerror): changed message for EAGAIN from "no more processes" to "try again" since EAGAIN is used with functions else than fork(). * gscanner.c (g_scanner_get_token_ll): use strtol() instead of strtoul() to avoid conflicts with solaris. * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog into this file. Wed Jan 7 02:14:30 PST 1998 Manish Singh * glib.h: * glist.c: * gslist.c: * testglib.c: Added g_[s]list_insert_sorted function and appropriate tests in testglib Sat Jan 3 20:23:25 1998 Owen Taylor * glib.h: Changed guint32 -> guint for bitfields. (Bitfields must be int or unsigned int?) Fri Jan 2 23:52 PST 1998 Jay Painter * glib_pre1.h: * glib_pre2.h: * glib.h: reverted glibconfig.h and glib.h files back to the way they were before my ugly hack. * gscanner.c: removed inlines from clist and gscanner Tue Dec 23 02:49:51 1997 Tim Janik * gscanner.c: new file for GScanner: Flexible lexical scanner for general purpose. * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. gutils.c (g_strconcat): new function for string concatenation of NULL terminated parameter list. (g_strtod): new function to perform best string to double conversion with or without consideration of the current locale. Mon Dec 15 19:33:58 1997 Tim Janik * glist.c: minor optimizations: (g_list_append): `if' optimized for common code path, commented out unneccessary `assert', saved one variable assignment. (g_list_prepend): saved two (conditioned) variable assignment. (g_list_insert): saved one (conditioned) variable assignment, saved one variable assignment. (g_list_remove): `if' optimized for common code path, saved two variable assignments by using `g_list_free_1' (which is even faster) instead of `g_list_free'. (g_list_reverse): saved allocation of one variable, saved one variable assignment. Wed Dec 10 23:27:20 1997 Tim Janik * glib_pre1.h: * glib_pre2.h: * glib.h: this file now gets concatenated by makeglib_h from glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got created by configure (done by Jay Painter). * glib_pre2.h: the g_assert*() and g_return_*_fail() macros are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts when used within if (...) g_macro(); else ... conditionals. Tue Dec 17 13:14:07 1996 Peter Mattis * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to not call 'g_string' but to simply stringify the expression. Calling 'g_string' causes the expression to be expanded which is undesired. Sun Dec 1 01:30:48 1996 Peter Mattis * Started ChangeLog