@@ -132,6 +132,89 @@ OUTPUT;
132132
133133$ EXPECTED_OUTPUT_FLOAT_OFFSETS_REGEX = '/^ ' . expectf_to_regex (EXPECTF_OUTPUT_FLOAT_OFFSETS ) . '$/s ' ;
134134
135+ const EXPECTED_OUTPUT_NULL_OFFSETS = <<<OUTPUT
136+ Read before write:
137+
138+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
139+
140+ Warning: Undefined array key "" in %s on line %d
141+ NULL
142+ Write:
143+
144+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
145+ Read:
146+
147+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
148+ int(5)
149+ Read-Write:
150+
151+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
152+
153+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
154+ isset():
155+
156+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
157+ bool(true)
158+ empty():
159+
160+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
161+ bool(false)
162+ null coalesce:
163+
164+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
165+ int(25)
166+ Reference to dimension:
167+
168+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
169+ Value of reference:
170+ int(25)
171+ Value of container dimension after write to reference (should be int(100) if successful):
172+
173+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
174+ int(100)
175+ unset():
176+
177+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
178+ Nested read:
179+
180+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
181+
182+ Warning: Undefined array key "" in %s on line %d
183+
184+ Warning: Trying to access array offset on null in %s on line %d
185+ NULL
186+ Nested write:
187+
188+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
189+
190+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
191+ Nested Read-Write:
192+
193+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
194+
195+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
196+ Nested isset():
197+
198+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
199+ bool(true)
200+ Nested empty():
201+
202+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
203+ bool(false)
204+ Nested null coalesce:
205+
206+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
207+
208+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
209+ int(30)
210+ Nested unset():
211+
212+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line %d
213+
214+ OUTPUT ;
215+
216+ $ EXPECTED_OUTPUT_NULL_OFFSETS_REGEX = '/^ ' . expectf_to_regex (EXPECTED_OUTPUT_NULL_OFFSETS ) . '$/s ' ;
217+
135218const EXPECTED_OUTPUT_INVALID_OFFSETS = <<<OUTPUT
136219Read before write:
137220Cannot access offset of type %s on ArrayObject
@@ -175,44 +258,82 @@ $EXPECTED_OUTPUT_INVALID_OFFSETS_REGEX = '/^' . expectf_to_regex(EXPECTED_OUTPUT
175258const EXPECTED_OUTPUT_NULL_OFFSET = <<<OUTPUT
176259Read before write:
177260
261+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 8
262+
178263Warning: Undefined array key "" in %s on line 8
179264NULL
180265Write:
181266Read:
182267
268+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 22
269+
183270Warning: Undefined array key "" in %s on line 22
184271NULL
185272Read-Write:
186273
274+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 29
275+
187276Warning: Undefined array key "" in %s on line 29
188277isset():
278+
279+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 36
189280bool(false)
190281empty():
282+
283+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 42
191284bool(true)
192285null coalesce:
286+
287+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 48
193288string(7) "default"
194289Reference to dimension:
290+
291+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 55
195292Value of reference:
196293NULL
197294Value of container dimension after write to reference (should be int(100) if successful):
295+
296+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 60
198297int(100)
199298unset():
299+
300+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 67
200301Nested read:
201302
303+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 74
304+
202305Warning: Undefined array key "" in %s on line 74
203306
204307Warning: Trying to access array offset on null in %s on line 74
205308NULL
206309Nested write:
310+
311+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 81
312+
313+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 81
207314Nested Read-Write:
315+
316+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 88
317+
318+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 88
208319Nested isset():
320+
321+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 95
209322bool(true)
210323Nested empty():
324+
325+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 101
211326bool(false)
212327Nested null coalesce:
328+
329+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 107
330+
331+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 107
213332int(30)
214333Nested unset():
215334
335+ Deprecated: Using null as an array offset is deprecated, use an empty string instead in %s on line 114
336+
216337OUTPUT ;
217338
218339const EXPECTED_OUTPUT_RESOURCE_STDERR_OFFSETS = <<<OUTPUT
@@ -323,6 +444,7 @@ foreach ($offsets as $dimension) {
323444 !preg_match ($ EXPECTED_OUTPUT_VALID_OFFSETS_REGEX , $ varOutput )
324445 && !preg_match ($ EXPECTED_OUTPUT_INVALID_OFFSETS_REGEX , $ varOutput )
325446 && !preg_match ($ EXPECTED_OUTPUT_FLOAT_OFFSETS_REGEX , $ varOutput )
447+ && !preg_match ($ EXPECTED_OUTPUT_NULL_OFFSETS_REGEX , $ varOutput )
326448 && $ varOutput !== EXPECTED_OUTPUT_NULL_OFFSET
327449 && $ varOutput !== EXPECTED_OUTPUT_RESOURCE_STDERR_OFFSETS
328450 ) {
@@ -354,6 +476,7 @@ foreach ($offsets as $offset) {
354476 !preg_match ($ EXPECTED_OUTPUT_VALID_OFFSETS_REGEX , $ varOutput )
355477 && !preg_match ($ EXPECTED_OUTPUT_INVALID_OFFSETS_REGEX , $ varOutput )
356478 && !preg_match ($ EXPECTED_OUTPUT_FLOAT_OFFSETS_REGEX , $ varOutput )
479+ && !preg_match ($ EXPECTED_OUTPUT_NULL_OFFSETS_REGEX , $ varOutput )
357480 && $ varOutput !== EXPECTED_OUTPUT_NULL_OFFSET
358481 && $ varOutput !== EXPECTED_OUTPUT_RESOURCE_STDERR_OFFSETS
359482 ) {
0 commit comments