@@ -40,6 +40,13 @@ SCENARIO(
4040 auto val11 = from_integer (11 , type);
4141 auto val12 = from_integer (12 , type);
4242 auto val13 = from_integer (13 , type);
43+ auto val1minus = from_integer (-1 , type);
44+ auto val2minus = from_integer (-2 , type);
45+ auto val3minus = from_integer (-3 , type);
46+ auto val4minus = from_integer (-4 , type);
47+ auto val5minus = from_integer (-5 , type);
48+ auto val8minus = from_integer (-8 , type);
49+ auto val10minus = from_integer (-10 , type);
4350
4451 auto config = vsd_configt::constant_domain ();
4552 config.context_tracking .data_dependency_context = false ;
@@ -312,69 +319,68 @@ SCENARIO(
312319 EXPECT_MODIFIED (merged, {interval_3minus_3, interval_2_4});
313320 }
314321 }
315- /*
316- WHEN("merging [-3, -1] with [-4, -2]")
322+ WHEN (" merging {-3, -1} with {-4, -2}" )
317323 {
318- auto op1 = make_value_set(val3minus, val1minus, environment, ns);
319- auto op2 = make_value_set(val4minus, val2minus, environment, ns);
324+ auto op1 = make_value_set ({ val3minus, val1minus} , environment, ns);
325+ auto op2 = make_value_set ({ val4minus, val2minus} , environment, ns);
320326
321327 auto merged = widening_merge (op1, op2);
322328
323- THEN("widen lower bound - [-8, -1] ")
329+ THEN (" widen lower bound - { [-8, -4], -3, -2, -1} " )
324330 {
325- EXPECT_MODIFIED(merged, val8minus, val1minus);
326- }
327- }
328- WHEN("merging [-4, -2] with [-3, -1]")
329- {
330- auto op1 = make_value_set(val4minus, val2minus, environment, ns);
331- auto op2 = make_value_set(val3minus, val1minus, environment, ns);
332-
333- auto merged = widening_merge(op1, op2);
334-
335- THEN("widen upper bound - [-4, 3]")
336- {
337- EXPECT_MODIFIED(merged, val4minus, val3);
331+ EXPECT_MODIFIED (
332+ merged,
333+ {constant_interval_exprt (val8minus, val4minus),
334+ val3minus,
335+ val2minus,
336+ val1minus});
338337 }
339338 }
340- WHEN("merging [-2 , -1] with [-5 , -4] ")
339+ WHEN (" merging {[-3 , -1]} with {[-4 , -2]} " )
341340 {
342- auto op1 = make_value_set(val2minus, val1minus, environment, ns);
343- auto op2 = make_value_set(val5minus, val4minus, environment, ns);
341+ auto interval31minus = constant_interval_exprt (val3minus, val1minus);
342+ auto interval42minus = constant_interval_exprt (val4minus, val2minus);
343+ auto op1 = make_value_set (interval31minus, environment, ns);
344+ auto op2 = make_value_set (interval42minus, environment, ns);
344345
345346 auto merged = widening_merge (op1, op2);
346347
347- THEN("widen lower bound - [-10 , -1] ")
348+ THEN (" widen lower bound - {[-8 , -2], [-3, -1]} " )
348349 {
349- EXPECT_MODIFIED(merged, val10minus, val1minus);
350+ EXPECT_MODIFIED (
351+ merged,
352+ {constant_interval_exprt (val8minus, val2minus), interval31minus});
350353 }
351354 }
352- WHEN("merging [-5 , -4] with [-2 , -1] ")
355+ WHEN (" merging {-3 , -1} with {[-4 , -2]} " )
353356 {
354- auto op1 = make_value_set(val5minus, val4minus, environment, ns);
355- auto op2 = make_value_set(val2minus, val1minus, environment, ns);
357+ auto interval42minus = constant_interval_exprt (val4minus, val2minus);
358+ auto op1 = make_value_set ({val3minus, val1minus}, environment, ns);
359+ auto op2 = make_value_set (interval42minus, environment, ns);
356360
357361 auto merged = widening_merge (op1, op2);
358362
359- THEN("widen upper bound - [-5, 4] ")
363+ THEN (" widen lower bound - {[-8, -2], -1} " )
360364 {
361- EXPECT_MODIFIED(merged, val5minus, val4);
365+ EXPECT_MODIFIED (
366+ merged, {constant_interval_exprt (val8minus, val2minus), val1minus});
362367 }
363368 }
364- WHEN("merging [-3, -2] with [-5 , -1] ")
369+ WHEN (" merging { [-3, -1]} with {-4 , -2} " )
365370 {
366- auto op1 = make_value_set(val3minus, val2minus, environment, ns);
367- auto op2 = make_value_set(val5minus, val1minus, environment, ns);
371+ auto interval31minus = constant_interval_exprt (val3minus, val1minus);
372+ auto op1 = make_value_set (interval31minus, environment, ns);
373+ auto op2 = make_value_set ({val4minus, val2minus}, environment, ns);
368374
369375 auto merged = widening_merge (op1, op2);
370-
371- THEN("result is widen both bounds - [-10, 4]")
376+ THEN (" widen lower bound - {[-8, -4], [-3, -1], -2}" )
372377 {
373- EXPECT_MODIFIED(merged, val10minus, val4);
378+ EXPECT_MODIFIED (
379+ merged,
380+ {constant_interval_exprt (val8minus, val4minus),
381+ interval31minus,
382+ val2minus});
374383 }
375384 }
376-
377- value_sets with intervals too
378- */
379385 }
380386}
0 commit comments