Main.hx 577 B

1234567891011121314151617181920212223242526272829303132
  1. class Main {
  2. static function main() {
  3. var a = [];
  4. for(i in #if noOpt 0...three() #else 0...3 #end) {
  5. a.push(i);
  6. i++;
  7. a.push(i);
  8. }
  9. check([0,1, 1,2, 2,3], a);
  10. }
  11. @:pure(false)
  12. static public function three():Int {
  13. return 3;
  14. }
  15. static function check(a1:Array<Int>, a2:Array<Int>) {
  16. if(a1.length != a2.length) {
  17. fail(a1, a2);
  18. }
  19. for(i in 0...a1.length) {
  20. if(a1[i] != a2[i]) {
  21. fail(a1, a2);
  22. }
  23. }
  24. }
  25. static function fail(a1:Array<Int>, a2:Array<Int>) {
  26. Sys.stderr().writeString('Arrays are not equal: $a1 != $a2\n');
  27. Sys.exit(1);
  28. }
  29. }