max / quasi
| 1 | //! R4(b) is refused by the macro, not by the borrow checker. |
| 2 | //! |
| 3 | //! Wiki `quasi-declare-form` section 11 reproduced the defect and measured its |
| 4 | //! incidence at zero written-out pairs across the ratified 514 shapes. So this |
| 5 | //! is a guard against reintroduction: nobody writes the split form today, and |
| 6 | //! the trap is only sprung on re-authoring. |
| 7 | //! |
| 8 | //! It has to be a compile-fail harness rather than an ordinary test, because |
| 9 | //! what is being asserted is *which* error comes out. Both a refused pair and |
| 10 | //! an accepted one fail to compile; the difference is that one names `label` |
| 11 | //! in the declaration and the other names a `let` in generated code that the |
| 12 | //! author never wrote and cannot find. |
| 13 | |
| 14 | |
| 15 | |
| 16 | let cases = new; |
| 17 | cases.compile_fail; |
| 18 | cases.pass; |
| 19 | |
| 20 |