$NetBSD: patch-aq,v 1.1 2005/03/16 12:48:49 rillig Exp $ gcc-2.95.3 does not like code intermixed with declarations. --- lib/qof/qofquery-deserial.c.orig Sun May 23 22:57:30 2004 +++ lib/qof/qofquery-deserial.c Wed Mar 16 09:43:29 2005 @@ -184,6 +184,7 @@ SUBRNAME (xmlNodePtr root) { \ xmlNodePtr xp = root->xmlChildrenNode; \ xmlNodePtr node; \ + QofQueryPredData *pred; \ \ QofQueryCompare how = QOF_COMPARE_EQUAL; \ CTYPE val = 0; \ @@ -197,7 +198,6 @@ SUBRNAME (xmlNodePtr root) {} \ } \ \ - QofQueryPredData *pred; \ pred = PRED (how, val); \ return pred; \ } @@ -251,6 +251,7 @@ qof_query_pred_kvp_from_xml (xmlNodePtr QofQueryCompare how = QOF_COMPARE_EQUAL; GSList *path = NULL; KvpValue *value = NULL; + QofQueryPredData *pred; for (node=xp; node; node = node->next) { @@ -271,7 +272,6 @@ qof_query_pred_kvp_from_xml (xmlNodePtr GET_DATE(&value, wrap_new_timespec, "qofquery:date"); } - QofQueryPredData *pred; pred = qof_query_kvp_predicate (how, path, value); g_slist_free (path); return pred; @@ -287,6 +287,8 @@ qof_query_pred_guid_from_xml (xmlNodePtr GList *guid_list = NULL; QofGuidMatch sm = QOF_GUID_MATCH_ANY; + QofQueryPredData *pred; + GList *n; for (node=xp; node; node = node->next) { @@ -313,11 +315,9 @@ qof_query_pred_guid_from_xml (xmlNodePtr } } - QofQueryPredData *pred; pred = qof_query_guid_predicate (sm, guid_list); /* The predicate made a copy of everything, so free our stuff */ - GList *n; for (n=guid_list; n; n=n->next) { guid_free (n->data); @@ -336,6 +336,7 @@ qof_query_pred_char_from_xml (xmlNodePtr QofCharMatch sm = QOF_CHAR_MATCH_ANY; const char * char_list = NULL; + QofQueryPredData *pred; for (node=xp; node; node = node->next) { @@ -348,7 +349,6 @@ qof_query_pred_char_from_xml (xmlNodePtr {} } - QofQueryPredData *pred; pred = qof_query_char_predicate (sm, char_list); return pred; } @@ -364,6 +364,7 @@ qof_query_pred_numeric_from_xml (xmlNode QofQueryCompare how = QOF_COMPARE_EQUAL; QofNumericMatch sm = QOF_NUMERIC_MATCH_ANY; gnc_numeric num; + QofQueryPredData *pred; for (node=xp; node; node = node->next) { @@ -376,7 +377,6 @@ qof_query_pred_numeric_from_xml (xmlNode {} } - QofQueryPredData *pred; pred = qof_query_numeric_predicate (how, sm, num); return pred; } @@ -392,6 +392,7 @@ qof_query_pred_date_from_xml (xmlNodePtr QofQueryCompare how = QOF_COMPARE_EQUAL; QofDateMatch sm = QOF_DATE_MATCH_ROUNDED; Timespec date = {0,0}; + QofQueryPredData *pred; for (node=xp; node; node = node->next) { @@ -404,7 +405,6 @@ qof_query_pred_date_from_xml (xmlNodePtr {} } - QofQueryPredData *pred; pred = qof_query_date_predicate (how, sm, date); return pred; } @@ -421,6 +421,7 @@ qof_query_pred_string_from_xml (xmlNodeP QofStringMatch sm = QOF_STRING_MATCH_CASEINSENSITIVE; gboolean is_regex = FALSE; const char *pstr = NULL; + QofQueryPredData *pred; for (node=xp; node; node = node->next) { @@ -434,7 +435,6 @@ qof_query_pred_string_from_xml (xmlNodeP {} } - QofQueryPredData *pred; pred = qof_query_string_predicate (how, pstr, sm , is_regex); return pred; } @@ -476,8 +476,9 @@ qof_query_term_from_xml (QofQuery *q, xm if (0 == strcmp (node->name, "qofquery:invert")) { QofQuery *qt = qof_query_create(); + QofQuery *qinv; qof_query_term_from_xml (qt, node); - QofQuery *qinv = qof_query_invert (qt); + qinv = qof_query_invert (qt); qof_query_merge_in_place (q, qinv, QOF_QUERY_AND); qof_query_destroy (qinv); qof_query_destroy (qt); @@ -594,10 +595,12 @@ QofQuery * qof_query_from_xml (xmlNodePtr root) { QofQuery *q; + xmlChar *version; + xmlNodePtr qpart, node; if (!root) return NULL; - xmlChar * version = xmlGetProp(root, "version"); + version = xmlGetProp(root, "version"); if (!root->name || strcmp ("qof:qofquery", root->name)) { // XXX something is wrong. warn ... @@ -606,8 +609,7 @@ qof_query_from_xml (xmlNodePtr root) q = qof_query_create (); - xmlNodePtr qpart = root->xmlChildrenNode; - xmlNodePtr node; + qpart = root->xmlChildrenNode; for (node=qpart; node; node = node->next) { if (node->type != XML_ELEMENT_NODE) continue;