204 CHECK((lhs == rhs) == lhsEqRhs);
205 CHECK((lhs != rhs) != lhsEqRhs);
206 CHECK((lhs < rhs) == (!(lhsEqRhs || !lhsLtRhs)));
207 CHECK((lhs <= rhs) == (lhsEqRhs || lhsLtRhs));
208 CHECK((lhs >= rhs) == (lhsEqRhs || !lhsLtRhs));
209 CHECK((lhs > rhs) == (!(lhsEqRhs || lhsLtRhs)));
238#pragma push_macro("DO_COMPARE")
240#define DO_COMPARE(lhs, rhs, eq, lt) doCompare(lhs, rhs, eq, lt, __LINE__)
242 DO_COMPARE(null0, intNeg1,
false,
true);
243 DO_COMPARE(null0, int0,
false,
true);
244 DO_COMPARE(null0, intPos1,
false,
true);
245 DO_COMPARE(null0, uint0,
false,
true);
246 DO_COMPARE(null0, uint1,
false,
true);
247 DO_COMPARE(null0, realNeg1,
false,
true);
248 DO_COMPARE(null0, real0,
false,
true);
249 DO_COMPARE(null0, realPos1,
false,
true);
250 DO_COMPARE(null0, str0,
false,
true);
251 DO_COMPARE(null0, str1,
false,
true);
252 DO_COMPARE(null0, boolF,
false,
true);
253 DO_COMPARE(null0, boolT,
false,
true);
254 DO_COMPARE(null0, array0,
false,
true);
255 DO_COMPARE(null0, array1,
false,
true);
256 DO_COMPARE(null0, obj0,
false,
true);
257 DO_COMPARE(null0, obj1,
false,
true);
259 DO_COMPARE(intNeg1, null0,
false,
false);
260 DO_COMPARE(intNeg1, intNeg1,
true,
false);
261 DO_COMPARE(intNeg1, int0,
false,
true);
262 DO_COMPARE(intNeg1, intPos1,
false,
true);
263 DO_COMPARE(intNeg1, uint0,
false,
true);
264 DO_COMPARE(intNeg1, uint1,
false,
true);
265 DO_COMPARE(intNeg1, realNeg1,
false,
true);
266 DO_COMPARE(intNeg1, real0,
false,
true);
267 DO_COMPARE(intNeg1, realPos1,
false,
true);
268 DO_COMPARE(intNeg1, str0,
false,
true);
269 DO_COMPARE(intNeg1, str1,
false,
true);
270 DO_COMPARE(intNeg1, boolF,
false,
true);
271 DO_COMPARE(intNeg1, boolT,
false,
true);
272 DO_COMPARE(intNeg1, array0,
false,
true);
273 DO_COMPARE(intNeg1, array1,
false,
true);
274 DO_COMPARE(intNeg1, obj0,
false,
true);
275 DO_COMPARE(intNeg1, obj1,
false,
true);
277 DO_COMPARE(int0, null0,
false,
false);
278 DO_COMPARE(int0, intNeg1,
false,
false);
279 DO_COMPARE(int0, int0,
true,
false);
280 DO_COMPARE(int0, intPos1,
false,
true);
281 DO_COMPARE(int0, uint0,
true,
false);
282 DO_COMPARE(int0, uint1,
false,
true);
283 DO_COMPARE(int0, realNeg1,
false,
true);
284 DO_COMPARE(int0, real0,
false,
true);
285 DO_COMPARE(int0, realPos1,
false,
true);
286 DO_COMPARE(int0, str0,
false,
true);
287 DO_COMPARE(int0, str1,
false,
true);
288 DO_COMPARE(int0, boolF,
false,
true);
289 DO_COMPARE(int0, boolT,
false,
true);
290 DO_COMPARE(int0, array0,
false,
true);
291 DO_COMPARE(int0, array1,
false,
true);
292 DO_COMPARE(int0, obj0,
false,
true);
293 DO_COMPARE(int0, obj1,
false,
true);
295 DO_COMPARE(intPos1, null0,
false,
false);
296 DO_COMPARE(intPos1, intNeg1,
false,
false);
297 DO_COMPARE(intPos1, int0,
false,
false);
298 DO_COMPARE(intPos1, intPos1,
true,
false);
299 DO_COMPARE(intPos1, uint0,
false,
false);
300 DO_COMPARE(intPos1, uint1,
true,
false);
301 DO_COMPARE(intPos1, realNeg1,
false,
true);
302 DO_COMPARE(intPos1, real0,
false,
true);
303 DO_COMPARE(intPos1, realPos1,
false,
true);
304 DO_COMPARE(intPos1, str0,
false,
true);
305 DO_COMPARE(intPos1, str1,
false,
true);
306 DO_COMPARE(intPos1, boolF,
false,
true);
307 DO_COMPARE(intPos1, boolT,
false,
true);
308 DO_COMPARE(intPos1, array0,
false,
true);
309 DO_COMPARE(intPos1, array1,
false,
true);
310 DO_COMPARE(intPos1, obj0,
false,
true);
311 DO_COMPARE(intPos1, obj1,
false,
true);
313 DO_COMPARE(uint0, null0,
false,
false);
314 DO_COMPARE(uint0, intNeg1,
false,
false);
315 DO_COMPARE(uint0, int0,
true,
false);
316 DO_COMPARE(uint0, intPos1,
false,
true);
317 DO_COMPARE(uint0, uint0,
true,
false);
318 DO_COMPARE(uint0, uint1,
false,
true);
319 DO_COMPARE(uint0, realNeg1,
false,
true);
320 DO_COMPARE(uint0, real0,
false,
true);
321 DO_COMPARE(uint0, realPos1,
false,
true);
322 DO_COMPARE(uint0, str0,
false,
true);
323 DO_COMPARE(uint0, str1,
false,
true);
324 DO_COMPARE(uint0, boolF,
false,
true);
325 DO_COMPARE(uint0, boolT,
false,
true);
326 DO_COMPARE(uint0, array0,
false,
true);
327 DO_COMPARE(uint0, array1,
false,
true);
328 DO_COMPARE(uint0, obj0,
false,
true);
329 DO_COMPARE(uint0, obj1,
false,
true);
331 DO_COMPARE(uint1, null0,
false,
false);
332 DO_COMPARE(uint1, intNeg1,
false,
false);
333 DO_COMPARE(uint1, int0,
false,
false);
334 DO_COMPARE(uint1, intPos1,
true,
false);
335 DO_COMPARE(uint1, uint0,
false,
false);
336 DO_COMPARE(uint1, uint1,
true,
false);
337 DO_COMPARE(uint1, realNeg1,
false,
true);
338 DO_COMPARE(uint1, real0,
false,
true);
339 DO_COMPARE(uint1, realPos1,
false,
true);
340 DO_COMPARE(uint1, str0,
false,
true);
341 DO_COMPARE(uint1, str1,
false,
true);
342 DO_COMPARE(uint1, boolF,
false,
true);
343 DO_COMPARE(uint1, boolT,
false,
true);
344 DO_COMPARE(uint1, array0,
false,
true);
345 DO_COMPARE(uint1, array1,
false,
true);
346 DO_COMPARE(uint1, obj0,
false,
true);
347 DO_COMPARE(uint1, obj1,
false,
true);
349 DO_COMPARE(realNeg1, null0,
false,
false);
350 DO_COMPARE(realNeg1, intNeg1,
false,
false);
351 DO_COMPARE(realNeg1, int0,
false,
false);
352 DO_COMPARE(realNeg1, intPos1,
false,
false);
353 DO_COMPARE(realNeg1, uint0,
false,
false);
354 DO_COMPARE(realNeg1, uint1,
false,
false);
355 DO_COMPARE(realNeg1, realNeg1,
true,
false);
356 DO_COMPARE(realNeg1, real0,
false,
true);
357 DO_COMPARE(realNeg1, realPos1,
false,
true);
358 DO_COMPARE(realNeg1, str0,
false,
true);
359 DO_COMPARE(realNeg1, str1,
false,
true);
360 DO_COMPARE(realNeg1, boolF,
false,
true);
361 DO_COMPARE(realNeg1, boolT,
false,
true);
362 DO_COMPARE(realNeg1, array0,
false,
true);
363 DO_COMPARE(realNeg1, array1,
false,
true);
364 DO_COMPARE(realNeg1, obj0,
false,
true);
365 DO_COMPARE(realNeg1, obj1,
false,
true);
367 DO_COMPARE(real0, null0,
false,
false);
368 DO_COMPARE(real0, intNeg1,
false,
false);
369 DO_COMPARE(real0, int0,
false,
false);
370 DO_COMPARE(real0, intPos1,
false,
false);
371 DO_COMPARE(real0, uint0,
false,
false);
372 DO_COMPARE(real0, uint1,
false,
false);
373 DO_COMPARE(real0, realNeg1,
false,
false);
374 DO_COMPARE(real0, real0,
true,
false);
375 DO_COMPARE(real0, realPos1,
false,
true);
376 DO_COMPARE(real0, str0,
false,
true);
377 DO_COMPARE(real0, str1,
false,
true);
378 DO_COMPARE(real0, boolF,
false,
true);
379 DO_COMPARE(real0, boolT,
false,
true);
380 DO_COMPARE(real0, array0,
false,
true);
381 DO_COMPARE(real0, array1,
false,
true);
382 DO_COMPARE(real0, obj0,
false,
true);
383 DO_COMPARE(real0, obj1,
false,
true);
385 DO_COMPARE(realPos1, null0,
false,
false);
386 DO_COMPARE(realPos1, intNeg1,
false,
false);
387 DO_COMPARE(realPos1, int0,
false,
false);
388 DO_COMPARE(realPos1, intPos1,
false,
false);
389 DO_COMPARE(realPos1, uint0,
false,
false);
390 DO_COMPARE(realPos1, uint1,
false,
false);
391 DO_COMPARE(realPos1, realNeg1,
false,
false);
392 DO_COMPARE(realPos1, real0,
false,
false);
393 DO_COMPARE(realPos1, realPos1,
true,
false);
394 DO_COMPARE(realPos1, str0,
false,
true);
395 DO_COMPARE(realPos1, str1,
false,
true);
396 DO_COMPARE(realPos1, boolF,
false,
true);
397 DO_COMPARE(realPos1, boolT,
false,
true);
398 DO_COMPARE(realPos1, array0,
false,
true);
399 DO_COMPARE(realPos1, array1,
false,
true);
400 DO_COMPARE(realPos1, obj0,
false,
true);
401 DO_COMPARE(realPos1, obj1,
false,
true);
403 DO_COMPARE(str0, null0,
false,
false);
404 DO_COMPARE(str0, intNeg1,
false,
false);
405 DO_COMPARE(str0, int0,
false,
false);
406 DO_COMPARE(str0, intPos1,
false,
false);
407 DO_COMPARE(str0, uint0,
false,
false);
408 DO_COMPARE(str0, uint1,
false,
false);
409 DO_COMPARE(str0, realNeg1,
false,
false);
410 DO_COMPARE(str0, real0,
false,
false);
411 DO_COMPARE(str0, realPos1,
false,
false);
412 DO_COMPARE(str0, str0,
true,
false);
413 DO_COMPARE(str0, str1,
false,
true);
414 DO_COMPARE(str0, boolF,
false,
true);
415 DO_COMPARE(str0, boolT,
false,
true);
416 DO_COMPARE(str0, array0,
false,
true);
417 DO_COMPARE(str0, array1,
false,
true);
418 DO_COMPARE(str0, obj0,
false,
true);
419 DO_COMPARE(str0, obj1,
false,
true);
421 DO_COMPARE(str1, null0,
false,
false);
422 DO_COMPARE(str1, intNeg1,
false,
false);
423 DO_COMPARE(str1, int0,
false,
false);
424 DO_COMPARE(str1, intPos1,
false,
false);
425 DO_COMPARE(str1, uint0,
false,
false);
426 DO_COMPARE(str1, uint1,
false,
false);
427 DO_COMPARE(str1, realNeg1,
false,
false);
428 DO_COMPARE(str1, real0,
false,
false);
429 DO_COMPARE(str1, realPos1,
false,
false);
430 DO_COMPARE(str1, str0,
false,
false);
431 DO_COMPARE(str1, str1,
true,
false);
432 DO_COMPARE(str1, boolF,
false,
true);
433 DO_COMPARE(str1, boolT,
false,
true);
434 DO_COMPARE(str1, array0,
false,
true);
435 DO_COMPARE(str1, array1,
false,
true);
436 DO_COMPARE(str1, obj0,
false,
true);
437 DO_COMPARE(str1, obj1,
false,
true);
439 DO_COMPARE(boolF, null0,
false,
false);
440 DO_COMPARE(boolF, intNeg1,
false,
false);
441 DO_COMPARE(boolF, int0,
false,
false);
442 DO_COMPARE(boolF, intPos1,
false,
false);
443 DO_COMPARE(boolF, uint0,
false,
false);
444 DO_COMPARE(boolF, uint1,
false,
false);
445 DO_COMPARE(boolF, realNeg1,
false,
false);
446 DO_COMPARE(boolF, real0,
false,
false);
447 DO_COMPARE(boolF, realPos1,
false,
false);
448 DO_COMPARE(boolF, str0,
false,
false);
449 DO_COMPARE(boolF, str1,
false,
false);
450 DO_COMPARE(boolF, boolF,
true,
false);
451 DO_COMPARE(boolF, boolT,
false,
true);
452 DO_COMPARE(boolF, array0,
false,
true);
453 DO_COMPARE(boolF, array1,
false,
true);
454 DO_COMPARE(boolF, obj0,
false,
true);
455 DO_COMPARE(boolF, obj1,
false,
true);
457 DO_COMPARE(boolT, null0,
false,
false);
458 DO_COMPARE(boolT, intNeg1,
false,
false);
459 DO_COMPARE(boolT, int0,
false,
false);
460 DO_COMPARE(boolT, intPos1,
false,
false);
461 DO_COMPARE(boolT, uint0,
false,
false);
462 DO_COMPARE(boolT, uint1,
false,
false);
463 DO_COMPARE(boolT, realNeg1,
false,
false);
464 DO_COMPARE(boolT, real0,
false,
false);
465 DO_COMPARE(boolT, realPos1,
false,
false);
466 DO_COMPARE(boolT, str0,
false,
false);
467 DO_COMPARE(boolT, str1,
false,
false);
468 DO_COMPARE(boolT, boolF,
false,
false);
469 DO_COMPARE(boolT, boolT,
true,
false);
470 DO_COMPARE(boolT, array0,
false,
true);
471 DO_COMPARE(boolT, array1,
false,
true);
472 DO_COMPARE(boolT, obj0,
false,
true);
473 DO_COMPARE(boolT, obj1,
false,
true);
475 DO_COMPARE(array0, null0,
false,
false);
476 DO_COMPARE(array0, intNeg1,
false,
false);
477 DO_COMPARE(array0, int0,
false,
false);
478 DO_COMPARE(array0, intPos1,
false,
false);
479 DO_COMPARE(array0, uint0,
false,
false);
480 DO_COMPARE(array0, uint1,
false,
false);
481 DO_COMPARE(array0, realNeg1,
false,
false);
482 DO_COMPARE(array0, real0,
false,
false);
483 DO_COMPARE(array0, realPos1,
false,
false);
484 DO_COMPARE(array0, str0,
false,
false);
485 DO_COMPARE(array0, str1,
false,
false);
486 DO_COMPARE(array0, boolF,
false,
false);
487 DO_COMPARE(array0, boolT,
false,
false);
488 DO_COMPARE(array0, array0,
true,
false);
489 DO_COMPARE(array0, array1,
false,
true);
490 DO_COMPARE(array0, obj0,
false,
true);
491 DO_COMPARE(array0, obj1,
false,
true);
493 DO_COMPARE(array1, null0,
false,
false);
494 DO_COMPARE(array1, intNeg1,
false,
false);
495 DO_COMPARE(array1, int0,
false,
false);
496 DO_COMPARE(array1, intPos1,
false,
false);
497 DO_COMPARE(array1, uint0,
false,
false);
498 DO_COMPARE(array1, uint1,
false,
false);
499 DO_COMPARE(array1, realNeg1,
false,
false);
500 DO_COMPARE(array1, real0,
false,
false);
501 DO_COMPARE(array1, realPos1,
false,
false);
502 DO_COMPARE(array1, str0,
false,
false);
503 DO_COMPARE(array1, str1,
false,
false);
504 DO_COMPARE(array1, boolF,
false,
false);
505 DO_COMPARE(array1, boolT,
false,
false);
506 DO_COMPARE(array1, array0,
false,
false);
507 DO_COMPARE(array1, array1,
true,
false);
508 DO_COMPARE(array1, obj0,
false,
true);
509 DO_COMPARE(array1, obj1,
false,
true);
511 DO_COMPARE(obj0, null0,
false,
false);
512 DO_COMPARE(obj0, intNeg1,
false,
false);
513 DO_COMPARE(obj0, int0,
false,
false);
514 DO_COMPARE(obj0, intPos1,
false,
false);
515 DO_COMPARE(obj0, uint0,
false,
false);
516 DO_COMPARE(obj0, uint1,
false,
false);
517 DO_COMPARE(obj0, realNeg1,
false,
false);
518 DO_COMPARE(obj0, real0,
false,
false);
519 DO_COMPARE(obj0, realPos1,
false,
false);
520 DO_COMPARE(obj0, str0,
false,
false);
521 DO_COMPARE(obj0, str1,
false,
false);
522 DO_COMPARE(obj0, boolF,
false,
false);
523 DO_COMPARE(obj0, boolT,
false,
false);
524 DO_COMPARE(obj0, array0,
false,
false);
525 DO_COMPARE(obj0, array1,
false,
false);
526 DO_COMPARE(obj0, obj0,
true,
false);
527 DO_COMPARE(obj0, obj1,
false,
true);
529 DO_COMPARE(obj1, null0,
false,
false);
530 DO_COMPARE(obj1, intNeg1,
false,
false);
531 DO_COMPARE(obj1, int0,
false,
false);
532 DO_COMPARE(obj1, intPos1,
false,
false);
533 DO_COMPARE(obj1, uint0,
false,
false);
534 DO_COMPARE(obj1, uint1,
false,
false);
535 DO_COMPARE(obj1, realNeg1,
false,
false);
536 DO_COMPARE(obj1, real0,
false,
false);
537 DO_COMPARE(obj1, realPos1,
false,
false);
538 DO_COMPARE(obj1, str0,
false,
false);
539 DO_COMPARE(obj1, str1,
false,
false);
540 DO_COMPARE(obj1, boolF,
false,
false);
541 DO_COMPARE(obj1, boolT,
false,
false);
542 DO_COMPARE(obj1, array0,
false,
false);
543 DO_COMPARE(obj1, array1,
false,
false);
544 DO_COMPARE(obj1, obj0,
false,
false);
545 DO_COMPARE(obj1, obj1,
true,
false);
547#pragma pop_macro("DO_COMPARE")