Lst_AtEnd(nodes, (ClientData)gn);
Lst_AtEnd(nodes, gn);
Targ_FindList (names, flags)    Lst        	   names;	/* list of names to find */    int            flags;	/* flags used if no node is found for a given				 * name */{    Lst            nodes;	/* result list */    register LstNode  ln;		/* name list element */    register GNode *gn;		/* node in tLn */    char    	  *name;    nodes = Lst_Init();    if (Lst_Open (names) == FAILURE) {	return (nodes);    }    while ((ln = Lst_Next (names)) != NULL) {	name = (char *)Lst_Datum(ln);	gn = Targ_FindNode (name, flags);	if (gn != NULL) {	    /*	     * Note: Lst_AtEnd must come before the Lst_Concat so the nodes	     * are added to the list in the order in which they were	     * encountered in the makefile.	     */	    Lst_AtEnd(nodes, (ClientData)gn);	    if (gn->type & OP_DOUBLEDEP) {		Lst_Concat(nodes, gn->cohorts, LST_CONCNEW);	    }	} else if (flags == TARG_NOCREATE) {	    Error ("\"%s\" -- target unknown.", name);	}    }    Lst_Close (names);    return (nodes);}