Files
@ c502fc0c252a
Branch filter:
Location: CSY/reowolf/testdata/parser/positive/16.pdl - annotation
c502fc0c252a
484 B
text/plain
Preparing to fix 'delayed port transfer' bug
1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 1b7b852c3395 | #version 100
composite main() {
channel xo -> xi;
new a(xi);
new c(xo);
}
primitive a(in x) {
synchronous {
msg m = get(x);
assert m.length == 5;
assert m[0] == 'h';
assert m[1] == 'e';
assert m[2] == 'l';
assert m[3] == 'l';
assert m[4] == 'o';
}
}
primitive b(out x) {
synchronous (msg m) {
put(x, m);
}
}
// or
primitive c(out x) {
synchronous {
msg m = create(5);
m[0] = 'h';
m[1] = 'e';
m[2] = 'l';
m[3] = 'l';
m[4] = 'o';
put(x, m);
}
}
|