--TEST-- GMP operator overloading does not support resources --EXTENSIONS-- gmp --FILE-- getMessage(), PHP_EOL; } try { var_dump($num - STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num * STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num / STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num % STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num ** STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num | STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num & STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num ^ STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num << STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } try { var_dump($num >> STDERR); } catch (Throwable $e) { echo $e::class, ': ', $e->getMessage(), PHP_EOL; } ?> --EXPECT-- TypeError: Number must be of type GMP|string|int, resource given TypeError: Number must be of type GMP|string|int, resource given TypeError: Number must be of type GMP|string|int, resource given TypeError: Number must be of type GMP|string|int, resource given TypeError: Number must be of type GMP|string|int, resource given TypeError: Unsupported operand types: GMP ** resource TypeError: Number must be of type GMP|string|int, resource given TypeError: Number must be of type GMP|string|int, resource given TypeError: Number must be of type GMP|string|int, resource given TypeError: Unsupported operand types: GMP << resource TypeError: Unsupported operand types: GMP >> resource