ParseUnionPtr q = ParseUnionOf(tbl);
PUBLIC void free_lynx_cfg NOARGS{    Config_Type *tbl;    for (tbl = Config_Table; tbl->name != 0; tbl++) {#ifdef PARSE_DEBUG	Config_Type *q = tbl;#else	ConfigUnion *q = (ConfigUnion *)(&(tbl->value));#endif	switch (tbl->type) {	case CONF_ENV:	    if (q->str_value != 0) {		char *name = *(q->str_value);		char *eqls = strchr(name, '=');		if (eqls != 0) {		    *eqls = 0;#ifdef VMS		    Define_VMSLogical(name, NULL);#else# ifdef HAVE_UNSETENV		    unsetenv(name);# else		    if (putenv(name))		    	break;# endif#endif		}		FREE(*(q->str_value));		FREE(q->str_value);		/* is it enough for reload_read_cfg() to clean up		 * the result of putenv()?  No for certain platforms.		 */	    }	    break;	default:	    break;	}    }    free_item_list();    free_printer_item_list();}