rem: printf ("> Parsing %s as %s ... ",  list -> data, field -> name );
add: printf ("> Parsing %s as %s ... ",  (gchar *) list -> data, field -> name );
context: gboolean csv_import_csv_account ( GtkWidget * assistant, gchar * filename ){    struct struct_compte_importation * compte;    gchar * contents, * separator;    GSList * list;    compte = g_malloc0 ( sizeof ( struct struct_compte_importation ));    compte -> nom_de_compte = g_strdup ( _("Imported CSV account" ));    compte -> origine = TYPE_CSV;    compte -> filename = g_strdup ( filename );    contents = g_object_get_data ( G_OBJECT(assistant), "contents" );    separator = g_object_get_data ( G_OBJECT(assistant), "separator" );    if ( ! csv_fields_config )    {	liste_comptes_importes_error = g_slist_append ( liste_comptes_importes_error, 							compte );	return FALSE;    }    do    {	list = csv_parse_line ( &contents, separator );    }    while ( list == GINT_TO_POINTER(-1) );    list = csv_parse_line ( &contents, separator );	    do    {	struct struct_ope_importation * ope;	int i;	ope = g_malloc ( sizeof ( struct struct_ope_importation ) );	bzero ( ope, sizeof ( struct struct_ope_importation ) );	ope -> date = gdate_today ();	ope -> id_operation = NULL;	ope -> date_tmp = g_strdup ( "" );	ope -> tiers = g_strdup ( "" );	ope -> notes = g_strdup ( "" );	ope -> categ = g_strdup ( "" );	ope -> guid = g_strdup ( "" );	if ( list == GINT_TO_POINTER(-1) )	{	    list = csv_parse_line ( &contents, separator );	    continue;	}	for ( i = 0; csv_fields_config[i] != -1 && list ; i++)	{	    struct csv_field * field = & csv_fields [ csv_fields_config[i] ];	    if ( field -> parse )	    {		printf ("> Parsing %s as %s ... ",  list -> data, field -> name );		if ( field -> validate )		{		    if ( field -> validate ( list -> data ) )		    {			if ( ! field -> parse ( ope, list -> data ) )			{			    printf ("(failed)");			}		    }		    else		    {			printf ("(invalid)");		    }		}		printf ("\n");	    }	    list = list -> next;	}	list = csv_parse_line ( &contents, separator );	printf (">> Appending new transaction %p\n", ope );	compte -> operations_importees = g_slist_append ( compte -> operations_importees,							  ope );    }    while ( list );    if ( compte -> operations_importees )    {	/* Finally, we register it. */	liste_comptes_importes = g_slist_append ( liste_comptes_importes, compte );    }    else    {	/* ... or not, if no transaction was imported (implement sanitizing). */	liste_comptes_importes_error = g_slist_append ( liste_comptes_importes_error, 							compte );    }    return FALSE;}