1--TEST--
2Scalar type - internal function strict mode
3--FILE--
4<?php
5declare(strict_types=1);
6
7echo "*** Trying Ord With Integer" . PHP_EOL;
8try {
9    var_dump(ord(1));
10} catch (TypeError $e) {
11    echo "*** Caught " . $e->getMessage() . PHP_EOL;
12}
13
14echo "*** Trying Array Map With Invalid Callback" . PHP_EOL;
15try {
16    array_map([null, "bar"], []);
17} catch (TypeError $e) {
18    echo "*** Caught " . $e->getMessage() . PHP_EOL;
19}
20
21echo "*** Trying Strlen With Float" . PHP_EOL;
22try {
23    var_dump(strlen(1.5));
24} catch (TypeError $e) {
25    echo "*** Caught " . $e->getMessage() . PHP_EOL;
26}
27
28?>
29--EXPECT--
30*** Trying Ord With Integer
31*** Caught ord(): Argument #1 ($character) must be of type string, int given
32*** Trying Array Map With Invalid Callback
33*** Caught array_map(): Argument #1 ($callback) must be a valid callback or null, first array member is not a valid class name or object
34*** Trying Strlen With Float
35*** Caught strlen(): Argument #1 ($string) must be of type string, float given
36