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

Reply via email to