If I remember correctly, QB64 used to internally catch division by zero issues and toss error messages. At some point, that was changed to produce results more consistent with C-behavior, without any internal error catching.
PRINT 1/0 gives INF as a result now.
With no error check actually occurring, there’s nothing for ON ERROR to catch, so 1\0 tosses the critical error at the OS level.
The only solution at this point is for the programmer to error proof their own code. Two quick solutions pop to mind:
IF y <> 0 THEN z = x \ y ‘don’t do division if y is 0
OR
PRINT INT(1 / 0) ‘use INT value of real division, instead of integer division.