unifdef.test 1020 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. Run me through unifdef -UA
  2. *** Nothing should be visible here:
  3. #if defined A && defined B
  4. hello world
  5. #endif
  6. #if defined A && B
  7. hello world
  8. #endif
  9. #if defined A && 1
  10. hello world
  11. #endif
  12. #if defined A && (1 > 0)
  13. hello world
  14. #endif
  15. #if defined B && defined A
  16. hello world
  17. #endif
  18. #if B && defined A
  19. hello world
  20. #endif
  21. #if 1 && defined A
  22. hello world
  23. #endif
  24. #if (1 > 0) && defined A
  25. hello world
  26. #endif
  27. *** Everything should be visible here, but #if/#endif removed:
  28. #if defined B || !defined A
  29. hello world 1
  30. #endif
  31. #if !defined A || defined B
  32. hello world 2 (last)
  33. #endif
  34. *** This should be unchanged (#if/#endif not removed):
  35. #if defined A || defined B
  36. I am here 1
  37. #endif
  38. #if defined B || defined A
  39. I am here 2
  40. #endif
  41. I am here 3
  42. #if !defined FOO && !defined BAR \
  43. && !defined BAZ
  44. # error "I am here 4"
  45. #endif
  46. I am here 5
  47. #if (!defined FOO \
  48. && (defined BAR || defined BAZ \
  49. || defined XYZ))
  50. I am here 6
  51. #endif
  52. I am here 7
  53. #if !defined FOO \
  54. && defined BAR
  55. I am here 8
  56. #endif
  57. I am here 9 (last)
  58. *** End