Skip to content

Commit 2f5a05d

Browse files
committed
PHP 8.6: printf() is now optimised out if it only uses %s and %d (and literals)
1 parent 00eb7d1 commit 2f5a05d

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

tests/tracing/bug00003.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ date.timezone=Europe/Oslo
1010
--FILE--
1111
<?php
1212
require_once 'capture-trace.inc';
13-
@printf('%d %d %d %d:%d:%d', 1061728888, 1061728888, 1061728888, 1061728888, 1061728888, 1061728888);
13+
@printf('%d %d %d %d:%d:%x', 1061728888, 1061728888, 1061728888, 1061728888, 1061728888, 1061728888);
1414
xdebug_stop_trace();
1515
?>
1616
--EXPECTF--

tests/tracing/bug00558-002.phpt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,19 @@ xdebug.trace_format=0
1010
<?php
1111
require_once 'capture-trace.inc';
1212

13-
$any = 'printf("foo\n");';
13+
$any = 'printf("foo: %x\n", 42);';
1414
eval('eval($any);');
1515

1616
xdebug_stop_trace();
1717
?>
1818
DONE
1919
--EXPECTF--
20-
foo
20+
foo: 2a
2121
DONE
2222
TRACE START [%d-%d-%d %d:%d:%d.%d]
2323
%w%f %w%d -> eval('eval($any);') %sbug00558-002.php:5
24-
%w%f %w%d -> eval('printf("foo\\n");') %sbug00558-002.php(5) : eval()'d code:1
25-
%w%f %w%d -> printf($format = 'foo\n') %sbug00558-002.php(5) : eval()'d code(1) : eval()'d code:1
24+
%w%f %w%d -> eval('printf("foo: %s\\n", 42);') %sbug00558-002.php(5) : eval()'d code:1
25+
%w%f %w%d -> printf($format = 'foo: %s\n', ...$values = variadic(0 => 42)) %sbug00558-002.php(5) : eval()'d code(1) : eval()'d code:1
2626
%w%f %w%d -> xdebug_stop_trace() %sbug00558-002.php:7
2727
%w%f %w%d
2828
TRACE END [%d-%d-%d %d:%d:%d.%d]

0 commit comments

Comments
 (0)