if (Lst_AddNew(&pgn->children, gn) == SUCCESS) {
if (Lst_AddNew(&pgn->children, gn)) {
Make_HandleUse(cgn, pgn)    GNode	*cgn;	/* The .USE node */    GNode	*pgn;	/* The target of the .USE node */{    GNode	*gn;	/* A child of the .USE node */    LstNode	ln;	/* An element in the children list */    if (cgn->type & (OP_USE|OP_TRANSFORM)) {	if ((cgn->type & OP_USE) || Lst_IsEmpty(&pgn->commands)) {	    /* .USE or transformation and target has no commands -- append	     * the child's commands to the parent.  */	    Lst_Concat(&pgn->commands, &cgn->commands);	}	for (ln = Lst_First(&cgn->children); ln != NULL; ln = Lst_Adv(ln)) {	    gn = (GNode *)Lst_Datum(ln);	    if (Lst_AddNew(&pgn->children, gn) == SUCCESS) {		Lst_AtEnd(&gn->parents, pgn);		pgn->unmade += 1;	    }	}	pgn->type |= cgn->type & ~(OP_OPMASK|OP_USE|OP_TRANSFORM);	/*	 * This child node is now "made", so we decrement the count of	 * unmade children in the parent... We also remove the child	 * from the parent's list to accurately reflect the number of decent	 * children the parent has. This is used by Make_Run to decide	 * whether to queue the parent or examine its children...	 */	if (cgn->type & OP_USE) {	    pgn->unmade--;	}    }}