xref: /PHP-7.4/Zend/tests/binary.phpt (revision 3ed828a8)
1--TEST--
2testing binary literals
3--INI--
4precision=32
5--SKIPIF--
6<?php if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only"); ?>
7--FILE--
8<?php
9var_dump(0b1);
10var_dump(0b11);
11var_dump(0b111);
12var_dump(0b1111);
13var_dump(0b11111);
14var_dump(0b111111);
15var_dump(0b1111111);
16var_dump(0b11111111);
17var_dump(0b111111111);
18var_dump(0b1111111111);
19var_dump(0b11111111111);
20var_dump(0b111111111111);
21var_dump(0b1111111111111);
22var_dump(0b11111111111111);
23var_dump(0b111111111111111);
24var_dump(0b1111111111111111);
25var_dump(0b11111111111111111);
26var_dump(0b111111111111111111);
27var_dump(0b1111111111111111111);
28var_dump(0b11111111111111111111);
29var_dump(0b111111111111111111111);
30var_dump(0b1111111111111111111111);
31var_dump(0b11111111111111111111111);
32var_dump(0b111111111111111111111111);
33var_dump(0b1111111111111111111111111);
34var_dump(0b11111111111111111111111111);
35var_dump(0b111111111111111111111111111);
36var_dump(0b1111111111111111111111111111);
37var_dump(0b11111111111111111111111111111);
38var_dump(0b111111111111111111111111111111);
39var_dump(0b1111111111111111111111111111111);
40var_dump(0b11111111111111111111111111111111);
41var_dump(0b111111111111111111111111111111111);
42var_dump(0b1111111111111111111111111111111111);
43var_dump(0b11111111111111111111111111111111111);
44var_dump(0b111111111111111111111111111111111111);
45var_dump(0b1111111111111111111111111111111111111);
46var_dump(0b11111111111111111111111111111111111111);
47var_dump(0b111111111111111111111111111111111111111);
48var_dump(0b1111111111111111111111111111111111111111);
49var_dump(0b11111111111111111111111111111111111111111);
50var_dump(0b111111111111111111111111111111111111111111);
51var_dump(0b1111111111111111111111111111111111111111111);
52var_dump(0b11111111111111111111111111111111111111111111);
53var_dump(0b111111111111111111111111111111111111111111111);
54var_dump(0b1111111111111111111111111111111111111111111111);
55var_dump(0b11111111111111111111111111111111111111111111111);
56var_dump(0b111111111111111111111111111111111111111111111111);
57var_dump(0b1111111111111111111111111111111111111111111111111);
58var_dump(0b11111111111111111111111111111111111111111111111111);
59var_dump(0b111111111111111111111111111111111111111111111111111);
60var_dump(0b1111111111111111111111111111111111111111111111111111);
61var_dump(0b11111111111111111111111111111111111111111111111111111);
62var_dump(0b111111111111111111111111111111111111111111111111111111);
63var_dump(0b1111111111111111111111111111111111111111111111111111111);
64var_dump(0b11111111111111111111111111111111111111111111111111111111);
65var_dump(0b111111111111111111111111111111111111111111111111111111111);
66var_dump(0b1111111111111111111111111111111111111111111111111111111111);
67var_dump(0b11111111111111111111111111111111111111111111111111111111111);
68var_dump(0b111111111111111111111111111111111111111111111111111111111111);
69var_dump(0b1111111111111111111111111111111111111111111111111111111111111);
70var_dump(0b11111111111111111111111111111111111111111111111111111111111111);
71var_dump(0b111111111111111111111111111111111111111111111111111111111111111);
72var_dump(0b111111111111111111111111111111111111111111111111111111111111111 + 1);
73var_dump(0b1111111111111111111111111111111111111111111111111111111111111111);
74var_dump(0b1111111111111111111111111111111111111111111111111111111111111111 + 1);
75var_dump(0b11111111111111111111111111111111111111111111111111111111111111111);
76var_dump(0b11111111111111111111111111111111111111111111111111111111111111111 + 1);
77
78var_dump(-0b1111111111111111111111111111111111111111111111111111111111111111);
79var_dump(-0b111111111111111111111111111111111111111111111111111111111111111);
80var_dump(-0b11111111111111111111111111111111111111111111111111111111111111);
81var_dump(-0b1);
82--EXPECT--
83int(1)
84int(3)
85int(7)
86int(15)
87int(31)
88int(63)
89int(127)
90int(255)
91int(511)
92int(1023)
93int(2047)
94int(4095)
95int(8191)
96int(16383)
97int(32767)
98int(65535)
99int(131071)
100int(262143)
101int(524287)
102int(1048575)
103int(2097151)
104int(4194303)
105int(8388607)
106int(16777215)
107int(33554431)
108int(67108863)
109int(134217727)
110int(268435455)
111int(536870911)
112int(1073741823)
113int(2147483647)
114int(4294967295)
115int(8589934591)
116int(17179869183)
117int(34359738367)
118int(68719476735)
119int(137438953471)
120int(274877906943)
121int(549755813887)
122int(1099511627775)
123int(2199023255551)
124int(4398046511103)
125int(8796093022207)
126int(17592186044415)
127int(35184372088831)
128int(70368744177663)
129int(140737488355327)
130int(281474976710655)
131int(562949953421311)
132int(1125899906842623)
133int(2251799813685247)
134int(4503599627370495)
135int(9007199254740991)
136int(18014398509481983)
137int(36028797018963967)
138int(72057594037927935)
139int(144115188075855871)
140int(288230376151711743)
141int(576460752303423487)
142int(1152921504606846975)
143int(2305843009213693951)
144int(4611686018427387903)
145int(9223372036854775807)
146float(9223372036854775808)
147float(18446744073709549568)
148float(18446744073709549568)
149float(36893488147419099136)
150float(36893488147419099136)
151float(-18446744073709549568)
152int(-9223372036854775807)
153int(-4611686018427387903)
154int(-1)
155