Reserved Keyword
"next" is a reserved keyword for phasers. The frontend will throw an error whenever a local or a field is name next.
IN clause
- Pitfall: It is forbidden to pass addresses of locals on stack to an async IN clause
- Solutions:
- Use the OUT clause
- Pass a pointer to a data-structure allocated on the heap
...
Code Block |
---|
// Legal code: a single IN clause, that takes a list several arguments async IN(a,b) OUT(x) { code } // Invalid example => Compile time error (two IN clauses specified) async IN(a) IN(b) OUT(x) { code } |
OUT clause
- Pitfall: OUT variables are guaranteed to have been written back only after the enclosing finish scope is finished
...