In particular, the following code should not trap:
bool x = false;
if (false && (x = true))
This is resolved by https://bugs.webkit.org/show_bug.cgi?id=187779 (I didn't realize that there was an existing bug for this).
*** This bug has been marked as a duplicate of bug 187779 ***
Migrated to https://github.com/gpuweb/WHLSL/issues/113