g_node_copy() returns a copy of an N-ary tree. Though not all of the glib data structure need copy routines, singly and doubly linked lists have them: g_slist_copy() and g_list_copy(). And since my application needed a copy routine for N-ary trees, I wrote one. Chris Sears dbsears@ix.netcom.com