Firstly, my gsoc schedule is a bit unusual, as I will be largely unavailable for heavy coding until the second week of July.
So I’ve been working on OpenMP support, and now it is possible to use break, continue and return in parallel code, by trapping them inside the parallel construct and then propagating after them after the parallel construct. Of course, if you’re returning from multiple threads at the same time, it’s unspecified which value will be returned. Also, if you’re breaking out of these sections, the index variable has an undefined value afterwards (but it is known to be within the range of the prange parameters).
Today Robert merged my with gil branch, so you can now even use GIL-code inside parallel sections, and have exceptions propagate from them. And of course you can still surround those with gil blocks with a nogil-mode try/finally.