Если запустить в tiscript.exe-е из sciter-sdk 14.10.10 такой скрипт:
function foo (obj) {
const v = obj.prop;
try {
stdout.println("foo: " + obj.prop);
return;
} finally {
stdout.println("foo: " + obj.prop);
}
}
function foo2 (obj) {
// const v = obj.prop;
try {
stdout.println("foo2: " + obj.prop);
return;
} finally {
stdout.println("foo2: " + obj.prop);
}
}
function foo3 (obj) {
const v = obj.prop;
try {
stdout.println("foo3: " + obj.prop);
// return;
} finally {
stdout.println("foo3: " + obj.prop);
}
}
const obj = {prop:"bar"};
foo(obj)
foo2(obj)
foo3(obj)
то на выходе будет напечатано:
foo: bar
foo: undefined
foo2: bar
foo2: bar
foo3: bar
foo3: bar
А должно быть:
foo: bar
foo: bar
foo2: bar
foo2: bar
foo3: bar
foo3: bar
PS Если заменить stdout.println("foo: " + obj.prop); на assert obj.prop;, то будет тест-кейс. Дарю