hcl/t/var-01.err
hyung-hwan f3c0c1b8c1
Some checks failed
continuous-integration/drone/push Build is failing
enhanced the compiler to prohibit variable declaration in class init scope
2023-11-27 18:25:27 +09:00

26 lines
505 B
Plaintext

defclass A | a | {
defun ::* init1() {
| b |
set b (+ 1 2);
set a b;
printf "init to %d\n" a;
return self;
};
{
## this must not be allowed at this level. if it's allowed,
## it should be at the top-level which is above the class level. this is confusing.
| j | ##ERROR: syntax error - variable declaration disallowed in class init scope
set j 20;
printf ">>> %d\n" j;
}
defun ::* init2() {
| b |
set b (+ 10 20);
set a b;
printf "init to %d\n" a;
return self;
};
};