@@ -167,48 +167,24 @@ issue_2857_1: {
167167 comparisons : true ,
168168 }
169169 input: {
170- function f1 ( a ) {
171- a === undefined || a === null ;
172- a === undefined || a !== null ;
173- a !== undefined || a === null ;
174- a !== undefined || a !== null ;
175- a === undefined && a === null ;
176- a === undefined && a !== null ;
177- a !== undefined && a === null ;
178- a !== undefined && a !== null ;
179- }
180- function f2 ( a ) {
181- a === null || a === undefined ;
182- a === null || a !== undefined ;
183- a !== null || a === undefined ;
184- a !== null || a !== undefined ;
185- a === null && a === undefined ;
186- a === null && a !== undefined ;
187- a !== null && a === undefined ;
188- a !== null && a !== undefined ;
189- }
170+ a === undefined || a === null ;
171+ a === undefined || a !== null ;
172+ a !== undefined || a === null ;
173+ a !== undefined || a !== null ;
174+ a === undefined && a === null ;
175+ a === undefined && a !== null ;
176+ a !== undefined && a === null ;
177+ a !== undefined && a !== null ;
190178 }
191179 expect: {
192- function f1 ( a ) {
193- null == a ;
194- void 0 === a || null !== a ;
195- void 0 !== a || null === a ;
196- void 0 !== a || null !== a ;
197- void 0 === a && null === a ;
198- void 0 === a && null !== a ;
199- void 0 !== a && null === a ;
200- null != a ;
201- }
202- function f2 ( a ) {
203- null == a ;
204- null === a || void 0 !== a ;
205- null !== a || void 0 === a ;
206- null !== a || void 0 !== a ;
207- null === a && void 0 === a ;
208- null === a && void 0 !== a ;
209- null !== a && void 0 === a ;
210- null != a ;
211- }
180+ null == a ;
181+ void 0 === a || null !== a ;
182+ void 0 !== a || null === a ;
183+ void 0 !== a || null !== a ;
184+ void 0 === a && null === a ;
185+ void 0 === a && null !== a ;
186+ void 0 !== a && null === a ;
187+ null != a ;
212188 }
213189}
214190
@@ -217,28 +193,24 @@ issue_2857_2: {
217193 comparisons : true ,
218194 }
219195 input: {
220- function f ( a , p ) {
221- a === undefined || a === null || p ;
222- a === undefined || a !== null || p ;
223- a !== undefined || a === null || p ;
224- a !== undefined || a !== null || p ;
225- a === undefined && a === null || p ;
226- a === undefined && a !== null || p ;
227- a !== undefined && a === null || p ;
228- a !== undefined && a !== null || p ;
229- }
196+ a === null || a === undefined ;
197+ a === null || a !== undefined ;
198+ a !== null || a === undefined ;
199+ a !== null || a !== undefined ;
200+ a === null && a === undefined ;
201+ a === null && a !== undefined ;
202+ a !== null && a === undefined ;
203+ a !== null && a !== undefined ;
230204 }
231205 expect: {
232- function f ( a , p ) {
233- null == a || p ;
234- void 0 === a || null !== a || p ;
235- void 0 !== a || null === a || p ;
236- void 0 !== a || null !== a || p ;
237- void 0 === a && null === a || p ;
238- void 0 === a && null !== a || p ;
239- void 0 !== a && null === a || p ;
240- null != a || p ;
241- }
206+ null == a ;
207+ null === a || void 0 !== a ;
208+ null !== a || void 0 === a ;
209+ null !== a || void 0 !== a ;
210+ null === a && void 0 === a ;
211+ null === a && void 0 !== a ;
212+ null !== a && void 0 === a ;
213+ null != a ;
242214 }
243215}
244216
@@ -247,59 +219,50 @@ issue_2857_3: {
247219 comparisons : true ,
248220 }
249221 input: {
250- function f ( a , p ) {
251- a === undefined || a === null && p ;
252- a === undefined || a !== null && p ;
253- a !== undefined || a === null && p ;
254- a !== undefined || a !== null && p ;
255- a === undefined && a === null && p ;
256- a === undefined && a !== null && p ;
257- a !== undefined && a === null && p ;
258- a !== undefined && a !== null && p ;
259- }
222+ a === undefined || a === null || p ;
223+ a === undefined || a !== null || p ;
224+ a !== undefined || a === null || p ;
225+ a !== undefined || a !== null || p ;
226+ a === undefined && a === null || p ;
227+ a === undefined && a !== null || p ;
228+ a !== undefined && a === null || p ;
229+ a !== undefined && a !== null || p ;
260230 }
261231 expect: {
262- function f ( a , p ) {
263- void 0 === a || null === a && p ;
264- void 0 === a || null !== a && p ;
265- void 0 !== a || null === a && p ;
266- void 0 !== a || null !== a && p ;
267- void 0 === a && null === a && p ;
268- void 0 === a && null !== a && p ;
269- void 0 !== a && null === a && p ;
270- null != a && p ;
271- }
232+ null == a || p ;
233+ void 0 === a || null !== a || p ;
234+ void 0 !== a || null === a || p ;
235+ void 0 !== a || null !== a || p ;
236+ void 0 === a && null === a || p ;
237+ void 0 === a && null !== a || p ;
238+ void 0 !== a && null === a || p ;
239+ null != a || p ;
272240 }
273241}
274242
275243issue_2857_4: {
276244 options = {
277245 comparisons : true ,
278- conditionals : true ,
279246 }
280247 input: {
281- function f ( a , p ) {
282- p || a === undefined || a === null ;
283- p || a === undefined || a !== null ;
284- p || a !== undefined || a === null ;
285- p || a !== undefined || a !== null ;
286- p || a === undefined && a === null ;
287- p || a === undefined && a !== null ;
288- p || a !== undefined && a === null ;
289- p || a !== undefined && a !== null ;
290- }
248+ a === undefined || a === null && p ;
249+ a === undefined || a !== null && p ;
250+ a !== undefined || a === null && p ;
251+ a !== undefined || a !== null && p ;
252+ a === undefined && a === null && p ;
253+ a === undefined && a !== null && p ;
254+ a !== undefined && a === null && p ;
255+ a !== undefined && a !== null && p ;
291256 }
292257 expect: {
293- function f ( a , p ) {
294- p || null == a ;
295- p || void 0 === a || null !== a ;
296- p || void 0 !== a || null === a ;
297- p || void 0 !== a || null !== a ;
298- p || void 0 === a && null === a ;
299- p || void 0 === a && null !== a ;
300- p || void 0 !== a && null === a ;
301- p || null != a ;
302- }
258+ void 0 === a || null === a && p ;
259+ void 0 === a || null !== a && p ;
260+ void 0 !== a || null === a && p ;
261+ void 0 !== a || null !== a && p ;
262+ void 0 === a && null === a && p ;
263+ void 0 === a && null !== a && p ;
264+ void 0 !== a && null === a && p ;
265+ null != a && p ;
303266 }
304267}
305268
@@ -309,60 +272,73 @@ issue_2857_5: {
309272 conditionals : true ,
310273 }
311274 input: {
312- function f ( a , p ) {
313- p && a === undefined || a === null ;
314- p && a === undefined || a !== null ;
315- p && a !== undefined || a === null ;
316- p && a !== undefined || a !== null ;
317- p && a === undefined && a === null ;
318- p && a === undefined && a !== null ;
319- p && a !== undefined && a === null ;
320- p && a !== undefined && a !== null ;
321- }
275+ p || a === undefined || a === null ;
276+ p || a === undefined || a !== null ;
277+ p || a !== undefined || a === null ;
278+ p || a !== undefined || a !== null ;
279+ p || a === undefined && a === null ;
280+ p || a === undefined && a !== null ;
281+ p || a !== undefined && a === null ;
282+ p || a !== undefined && a !== null ;
322283 }
323284 expect: {
324- function f ( a , p ) {
325- p && void 0 === a || null === a ;
326- p && void 0 === a || null !== a ;
327- p && void 0 !== a || null === a ;
328- p && void 0 !== a || null !== a ;
329- p && void 0 === a && null === a ;
330- p && void 0 === a && null !== a ;
331- p && void 0 !== a && null === a ;
332- p && null != a ;
333- }
285+ p || null == a ;
286+ p || void 0 === a || null !== a ;
287+ p || void 0 !== a || null === a ;
288+ p || void 0 !== a || null !== a ;
289+ p || void 0 === a && null === a ;
290+ p || void 0 === a && null !== a ;
291+ p || void 0 !== a && null === a ;
292+ p || null != a ;
334293 }
335294}
336295
337296issue_2857_6: {
297+ options = {
298+ comparisons : true ,
299+ conditionals : true ,
300+ }
301+ input: {
302+ p && a === undefined || a === null ;
303+ p && a === undefined || a !== null ;
304+ p && a !== undefined || a === null ;
305+ p && a !== undefined || a !== null ;
306+ p && a === undefined && a === null ;
307+ p && a === undefined && a !== null ;
308+ p && a !== undefined && a === null ;
309+ p && a !== undefined && a !== null ;
310+ }
311+ expect: {
312+ p && void 0 === a || null === a ;
313+ p && void 0 === a || null !== a ;
314+ p && void 0 !== a || null === a ;
315+ p && void 0 !== a || null !== a ;
316+ p && void 0 === a && null === a ;
317+ p && void 0 === a && null !== a ;
318+ p && void 0 !== a && null === a ;
319+ p && null != a ;
320+ }
321+ }
322+
323+ issue_2857_7: {
338324 options = {
339325 comparisons : true ,
340326 pure_getters : "strict" ,
341327 reduce_vars : true ,
342328 }
343329 input: {
344330 function f ( a ) {
345- if ( ( { } ) . b === undefined || { } . b === null )
331+ if ( { } . b === undefined || { } . b === null )
346332 return a . b !== undefined && a . b !== null ;
347333 }
348- console . log ( f ( {
349- a : [ null ] ,
350- get b ( ) {
351- return this . a . shift ( ) ;
352- }
353- } ) ) ;
334+ console . log ( f ( { b : [ ] } ) ) ;
354335 }
355336 expect: {
356337 function f ( a ) {
357338 if ( null == { } . b )
358- return void 0 !== a . b && null != = a . b ;
339+ return null != a . b ;
359340 }
360- console . log ( f ( {
361- a : [ null ] ,
362- get b ( ) {
363- return this . a . shift ( ) ;
364- }
365- } ) ) ;
341+ console . log ( f ( { b : [ ] } ) ) ;
366342 }
367343 expect_stdout: "true"
368344}
0 commit comments