@@ -2135,10 +2135,9 @@ class namespacet;
2135
2135
class object_descriptor_exprt :public binary_exprt
2136
2136
{
2137
2137
public:
2138
- object_descriptor_exprt ():binary_exprt(ID_object_descriptor)
2138
+ object_descriptor_exprt ()
2139
+ : binary_exprt(exprt(ID_unknown), ID_object_descriptor, exprt(ID_unknown))
2139
2140
{
2140
- op0 ().id (ID_unknown);
2141
- op1 ().id (ID_unknown);
2142
2141
}
2143
2142
2144
2143
void build (const exprt &expr, const namespacet &ns);
@@ -2207,17 +2206,18 @@ inline void validate_expr(const object_descriptor_exprt &value)
2207
2206
class dynamic_object_exprt :public binary_exprt
2208
2207
{
2209
2208
public:
2210
- dynamic_object_exprt ():binary_exprt(ID_dynamic_object)
2209
+ dynamic_object_exprt ()
2210
+ : binary_exprt(exprt(ID_unknown), ID_dynamic_object, exprt(ID_unknown))
2211
2211
{
2212
- op0 ().id (ID_unknown);
2213
- op1 ().id (ID_unknown);
2214
2212
}
2215
2213
2216
- explicit dynamic_object_exprt (const typet &type):
2217
- binary_exprt(ID_dynamic_object, type)
2214
+ explicit dynamic_object_exprt (const typet &type)
2215
+ : binary_exprt(
2216
+ exprt (ID_unknown),
2217
+ ID_dynamic_object,
2218
+ exprt(ID_unknown),
2219
+ type)
2218
2220
{
2219
- op0 ().id (ID_unknown);
2220
- op1 ().id (ID_unknown);
2221
2221
}
2222
2222
2223
2223
void set_instance (unsigned int instance);
@@ -2417,25 +2417,18 @@ class and_exprt:public multi_ary_exprt
2417
2417
{
2418
2418
}
2419
2419
2420
- and_exprt (const exprt &op0, const exprt &op1, const exprt &op2):
2421
- multi_ary_exprt (ID_and, bool_typet())
2420
+ and_exprt (const exprt &op0, const exprt &op1, const exprt &op2)
2421
+ : multi_ary_exprt(ID_and, {op0, op1, op2} , bool_typet())
2422
2422
{
2423
- add_to_operands (op0, op1, op2);
2424
2423
}
2425
2424
2426
2425
and_exprt (
2427
2426
const exprt &op0,
2428
2427
const exprt &op1,
2429
2428
const exprt &op2,
2430
- const exprt &op3):
2431
- multi_ary_exprt (ID_and, bool_typet())
2429
+ const exprt &op3)
2430
+ : multi_ary_exprt(ID_and, {op0, op1, op2, op3} , bool_typet())
2432
2431
{
2433
- exprt::operandst &op=operands ();
2434
- op.resize (4 );
2435
- op[0 ]=op0;
2436
- op[1 ]=op1;
2437
- op[2 ]=op2;
2438
- op[3 ]=op3;
2439
2432
}
2440
2433
};
2441
2434
@@ -2539,25 +2532,18 @@ class or_exprt:public multi_ary_exprt
2539
2532
{
2540
2533
}
2541
2534
2542
- or_exprt (const exprt &op0, const exprt &op1, const exprt &op2):
2543
- multi_ary_exprt (ID_or, bool_typet())
2535
+ or_exprt (const exprt &op0, const exprt &op1, const exprt &op2)
2536
+ : multi_ary_exprt(ID_or, {op0, op1, op2} , bool_typet())
2544
2537
{
2545
- add_to_operands (op0, op1, op2);
2546
2538
}
2547
2539
2548
2540
or_exprt (
2549
2541
const exprt &op0,
2550
2542
const exprt &op1,
2551
2543
const exprt &op2,
2552
- const exprt &op3):
2553
- multi_ary_exprt (ID_or, bool_typet())
2544
+ const exprt &op3)
2545
+ : multi_ary_exprt(ID_or, {op0, op1, op2, op3} , bool_typet())
2554
2546
{
2555
- exprt::operandst &op=operands ();
2556
- op.resize (4 );
2557
- op[0 ]=op0;
2558
- op[1 ]=op1;
2559
- op[2 ]=op2;
2560
- op[3 ]=op3;
2561
2547
}
2562
2548
};
2563
2549
@@ -2706,10 +2692,9 @@ class bitor_exprt:public multi_ary_exprt
2706
2692
{
2707
2693
}
2708
2694
2709
- bitor_exprt (const exprt &_op0, const exprt &_op1):
2710
- multi_ary_exprt (ID_bitor, _op0.type())
2695
+ bitor_exprt (const exprt &_op0, const exprt &_op1)
2696
+ : multi_ary_exprt(_op0, ID_bitor, _op1 , _op0.type())
2711
2697
{
2712
- add_to_operands (_op0, _op1);
2713
2698
}
2714
2699
};
2715
2700
@@ -2815,10 +2800,9 @@ class bitand_exprt:public multi_ary_exprt
2815
2800
{
2816
2801
}
2817
2802
2818
- bitand_exprt (const exprt &_op0, const exprt &_op1):
2819
- multi_ary_exprt (ID_bitand, _op0.type())
2803
+ bitand_exprt (const exprt &_op0, const exprt &_op1)
2804
+ : multi_ary_exprt(_op0, ID_bitand, _op1 , _op0.type())
2820
2805
{
2821
- add_to_operands (_op0, _op1);
2822
2806
}
2823
2807
};
2824
2808
@@ -4508,9 +4492,8 @@ class function_application_exprt:public binary_exprt
4508
4492
const symbol_exprt &_function,
4509
4493
const argumentst &_arguments,
4510
4494
const typet &_type)
4511
- : binary_exprt(ID_function_application, _type)
4495
+ : binary_exprt(_function, ID_function_application, exprt() , _type)
4512
4496
{
4513
- function ()=_function;
4514
4497
arguments () = _arguments;
4515
4498
}
4516
4499
0 commit comments