I’ve seen the same problem with using thread::scoped show up on IRC, Stack Overflow, even in the docs! The problem? Inserting a semicolon at the end of the call:
(I suppose we should use must_use's optional message to provide more info, e.g. #[must_use = "code will not run in parallel ifJoinGuardis immediately dropped"]. The exact text could be better than my scratch example.)