Supplemental fix for issue 13783 in std.parallelism

`auto f(ref ubyte);` should not take an lvalue of `enum E : ubyte`.
Fixing 13783 will disallow the accepts-invalid bug.
Make std.range.recurrence safe if possible
Merge pull request #2778 from tom-tan/safe-range-recurrence

Make std.range.Recurrence safe
Merge pull request #2773 from 9rnsr/fix13783

Supplemental fix for issue 13783 in std.parallelism