14 fprintf(stderr
, "Error in testbench output compare (line=%d):\n-%s\n+%s\n", line
, buffer1
, buffer2
);
18 int main(int argc
, char **argv
)
26 f1
= fopen(argv
[1], "r");
27 f2
= fopen(argv
[2], "r");
31 while (!feof(f1
) && !feof(f2
))
37 eof1
= fgets(buffer1
, 1024, f1
) == NULL
;
38 eof2
= fgets(buffer2
, 1024, f2
) == NULL
;
40 if (*buffer1
&& buffer1
[strlen(buffer1
)-1] == '\n')
41 buffer1
[strlen(buffer1
)-1] = 0;
43 if (*buffer2
&& buffer2
[strlen(buffer2
)-1] == '\n')
44 buffer2
[strlen(buffer2
)-1] = 0;
48 for (i
= 0; buffer1
[i
] || buffer2
[i
]; i
++)
50 check(buffer1
[i
] != 0 && buffer2
[i
] != 0);
52 // first argument is the reference. An 'z' or 'x'
53 // here means we don't care about the result.
54 if (buffer1
[i
] == 'z' || buffer1
[i
] == 'x')
56 if (buffer1
[i
] == 'Z' || buffer1
[i
] == 'X')
59 check(buffer1
[i
] == buffer2
[i
]);
63 check(feof(f1
) && feof(f2
));