On 05/09/13 01:33, Michael Roth wrote: > + case PTYPE_NUMBER: { > + numberList *ptr; > + char *double1, *double2; > + if (cur_head) { > + ptr = cur_head; > + cur_head = ptr->next; > + } else { > + cur_head = ptr = pl_copy.value.numbers; > + } > + /* we serialize with %f for our reference visitors, so rather > than > + * fuzzy * floating math to test "equality", just compare the > + * formatted values > + */
I think this comment block has been copied from elsewhere in this file, indented more deeply and re-filled. There's an asterisk in the comment body now. > + double1 = g_malloc0(calc_float_string_storage(pt->value.number)); > + double2 = g_malloc0(calc_float_string_storage(ptr->value)); > + g_assert_cmpstr(double1, ==, double2); Are you comparing empty strings? Space is allocated and zeroed, but I can't see where the values are actually formatted. (Same holds for the original instance of this code, test_primitives().) > + g_free(double1); > + g_free(double2); > + break; > + } Thanks, Laszlo