blob: a60e7e0a8de1c5597dfc3321e9042c7487d8da77 [file] [log] [blame]
modeltype Ecore uses ecore('http://www.eclipse.org/emf/2002/Ecore');
transformation bug417751();
main() {
// evaluation check
var ii = 5;
var count = 0;
if (ii > 0)
if (ii <= 5)
count := count + 1
elif (ii > 5)
log("")
;
if (ii > 0)
if (ii > 5)
log("")
elif (ii <= 5)
count := count + 1
;
if (ii > 0)
if (ii > 5)
log("")
elif (ii < 5)
log("")
else
count := count + 1
;
if (ii > 0)
if (ii > 5)
log("")
elif (ii < 5)
log("")
else
count := count + 1
else
log("")
;
if (ii < 0) {
log("")
}
elif (ii = 5)
if (ii < 2)
log("")
elif (ii > 2)
if (false)
log("")
elif (true)
count := count + 1
endif
else
log("1");
assert fatal (count = 5);
// parser checks
var t1 := if true then {1} endif;
var t2 := if (true) then 1 endif;
var t3 := if true then {1} else 2 endif;
var t4 := if (true) then 1 else {2} endif;
var t11 := if true then {1} elif true then 1 elif true then {} else 2 endif;
var t12 := if (true) then {1} elif false then {} endif;
var t13 := if (true) then {1} elif false then if true then {1} else 2 endif endif;
var t14 := if (true) then 1 else if true then {1} elif true then 1 elif true then {} else 2 endif endif;
if true then {1} elif true then 1 elif true then {} else 2 endif;
if (true) then {1} elif false then {} endif;
if (true) then {1} elif false then if true then {1} else 2 endif endif;
if (true) then 1 else {2} endif;
if (true)
object EClass {};
if (true)
object EClass {}
endif;
if (true)
object EClass {}
elif (false)
object EClass {};
if (true)
if (true)
if (true)
object EClass {}
endif
elif (false)
object EClass {}
elif (false)
object EClass {}
endif
elif (false)
object EClass {}
elif (false)
object EClass {}
endif;
if ((true)) {
object EClass {}
}
elif ((true)) {
object EClass {}
};
if ((true)) {
object EClass {}
}
elif ((true)) {
object EClass {}
}
endif;
if (true) {
if (true)
object EClass {}
};
if (true) {
if (true)
object EClass {}
endif
}
endif;
if (true) {
if (true)
object EClass {}
elif (true)
object EClass {}
elif (true)
object EClass {}
}
elif ((true)) {
object EClass {}
};
if (true) {
if (true)
object EClass {}
elif (true)
object EClass {}
elif (true)
object EClass {}
endif
}
elif ((true)) {
object EClass {}
}
endif;
if (true) {
}
else
log("2");
if (true) {
}
else
log("2")
endif;
if (true) {
}
elif (false)
log("2")
elif (false)
log("2")
else
log("2");
if (true)
log("2")
else {
};
if (true)
log("2")
elif (false)
log("2")
else {
};
if (true)
log("1")
else
log("2");
if (true)
log("1")
elif (true)
log("1")
else
log("2");
if (true)
log("1")
elif (true)
log("1")
else
log("2")
endif;
if (true) {
log("1")
}
else {
log("2");
};
if (true) {
log("1")
}
elif (true) {
log("1")
}
elif (true) {
log("1")
}
else {
log("2");
};
if (true)
if (true)
object EClass {};
if (true)
if (true)
object EClass {}
endif;
if (true)
if (true)
object EClass {}
endif
endif;
if (true)
if (true)
object EClass {}
elif (true)
object EClass {};
if (true)
if (true)
object EClass {}
elif (true)
object EClass {}
endif
endif;
if (true)
if (true)
object EClass {}
else
object EClass {};
if (true)
if (true)
object EClass {}
else
object EClass {}
endif;
if (true)
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {};
if (true)
if (true)
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
elif (true)
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
else
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
;
if (true)
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
endif
endif;
if (true)
if (true)
object EClass {}
else
object EClass {}
else
object EClass {};
if (true)
if (true)
object EClass {}
else
object EClass {}
endif
else
object EClass {}
endif;
if (true)
if (true)
object EClass {}
elif (true)
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
endif
elif (true)
if (true)
object EClass {}
elif (true)
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
else
object EClass {}
else
object EClass {};
var i:= 0;
while(i<10) {
i := i+1;
if (i > 5)
if (i > 6)
break
elif (i > 7)
break
else
continue
else
continue
};
if (true) {} else 1;
if (true)
if (false)
if (false)
object EClass {}
elif (false)
object EClass {}
else
object EClass {}
elif (false)
if (false)
object EClass {}
elif (false)
object EClass {}
else
object EClass {}
else
if (true)
object EClass {}
elif (true)
object EClass {}
else
object EClass {}
;
}