@@ -2151,10 +2151,9 @@ class namespacet;
2151
2151
class object_descriptor_exprt :public binary_exprt
2152
2152
{
2153
2153
public:
2154
- object_descriptor_exprt ():binary_exprt(ID_object_descriptor)
2154
+ object_descriptor_exprt ()
2155
+ : binary_exprt(exprt(ID_unknown), ID_object_descriptor, exprt(ID_unknown))
2155
2156
{
2156
- op0 ().id (ID_unknown);
2157
- op1 ().id (ID_unknown);
2158
2157
}
2159
2158
2160
2159
void build (const exprt &expr, const namespacet &ns);
@@ -2223,17 +2222,18 @@ inline void validate_expr(const object_descriptor_exprt &value)
2223
2222
class dynamic_object_exprt :public binary_exprt
2224
2223
{
2225
2224
public:
2226
- dynamic_object_exprt ():binary_exprt(ID_dynamic_object)
2225
+ dynamic_object_exprt ()
2226
+ : binary_exprt(exprt(ID_unknown), ID_dynamic_object, exprt(ID_unknown))
2227
2227
{
2228
- op0 ().id (ID_unknown);
2229
- op1 ().id (ID_unknown);
2230
2228
}
2231
2229
2232
- explicit dynamic_object_exprt (const typet &type):
2233
- binary_exprt(ID_dynamic_object, type)
2230
+ explicit dynamic_object_exprt (const typet &type)
2231
+ : binary_exprt(
2232
+ exprt (ID_unknown),
2233
+ ID_dynamic_object,
2234
+ exprt(ID_unknown),
2235
+ type)
2234
2236
{
2235
- op0 ().id (ID_unknown);
2236
- op1 ().id (ID_unknown);
2237
2237
}
2238
2238
2239
2239
void set_instance (unsigned int instance);
@@ -2434,25 +2434,18 @@ class and_exprt:public multi_ary_exprt
2434
2434
{
2435
2435
}
2436
2436
2437
- and_exprt (const exprt &op0, const exprt &op1, const exprt &op2):
2438
- multi_ary_exprt (ID_and, bool_typet())
2437
+ and_exprt (const exprt &op0, const exprt &op1, const exprt &op2)
2438
+ : multi_ary_exprt(ID_and, {op0, op1, op2} , bool_typet())
2439
2439
{
2440
- add_to_operands (op0, op1, op2);
2441
2440
}
2442
2441
2443
2442
and_exprt (
2444
2443
const exprt &op0,
2445
2444
const exprt &op1,
2446
2445
const exprt &op2,
2447
- const exprt &op3):
2448
- multi_ary_exprt (ID_and, bool_typet())
2446
+ const exprt &op3)
2447
+ : multi_ary_exprt(ID_and, {op0, op1, op2, op3} , bool_typet())
2449
2448
{
2450
- exprt::operandst &op=operands ();
2451
- op.resize (4 );
2452
- op[0 ]=op0;
2453
- op[1 ]=op1;
2454
- op[2 ]=op2;
2455
- op[3 ]=op3;
2456
2449
}
2457
2450
};
2458
2451
@@ -2557,25 +2550,18 @@ class or_exprt:public multi_ary_exprt
2557
2550
{
2558
2551
}
2559
2552
2560
- or_exprt (const exprt &op0, const exprt &op1, const exprt &op2):
2561
- multi_ary_exprt (ID_or, bool_typet())
2553
+ or_exprt (const exprt &op0, const exprt &op1, const exprt &op2)
2554
+ : multi_ary_exprt(ID_or, {op0, op1, op2} , bool_typet())
2562
2555
{
2563
- add_to_operands (op0, op1, op2);
2564
2556
}
2565
2557
2566
2558
or_exprt (
2567
2559
const exprt &op0,
2568
2560
const exprt &op1,
2569
2561
const exprt &op2,
2570
- const exprt &op3):
2571
- multi_ary_exprt (ID_or, bool_typet())
2562
+ const exprt &op3)
2563
+ : multi_ary_exprt(ID_or, {op0, op1, op2, op3} , bool_typet())
2572
2564
{
2573
- exprt::operandst &op=operands ();
2574
- op.resize (4 );
2575
- op[0 ]=op0;
2576
- op[1 ]=op1;
2577
- op[2 ]=op2;
2578
- op[3 ]=op3;
2579
2565
}
2580
2566
};
2581
2567
@@ -2725,10 +2711,9 @@ class bitor_exprt:public multi_ary_exprt
2725
2711
{
2726
2712
}
2727
2713
2728
- bitor_exprt (const exprt &_op0, const exprt &_op1):
2729
- multi_ary_exprt (ID_bitor, _op0.type())
2714
+ bitor_exprt (const exprt &_op0, const exprt &_op1)
2715
+ : multi_ary_exprt(_op0, ID_bitor, _op1 , _op0.type())
2730
2716
{
2731
- add_to_operands (_op0, _op1);
2732
2717
}
2733
2718
};
2734
2719
@@ -2834,10 +2819,9 @@ class bitand_exprt:public multi_ary_exprt
2834
2819
{
2835
2820
}
2836
2821
2837
- bitand_exprt (const exprt &_op0, const exprt &_op1):
2838
- multi_ary_exprt (ID_bitand, _op0.type())
2822
+ bitand_exprt (const exprt &_op0, const exprt &_op1)
2823
+ : multi_ary_exprt(_op0, ID_bitand, _op1 , _op0.type())
2839
2824
{
2840
- add_to_operands (_op0, _op1);
2841
2825
}
2842
2826
};
2843
2827
@@ -4528,9 +4512,8 @@ class function_application_exprt:public binary_exprt
4528
4512
const symbol_exprt &_function,
4529
4513
const argumentst &_arguments,
4530
4514
const typet &_type)
4531
- : binary_exprt(ID_function_application, _type)
4515
+ : binary_exprt(_function, ID_function_application, exprt() , _type)
4532
4516
{
4533
- function ()=_function;
4534
4517
arguments () = _arguments;
4535
4518
}
4536
4519
0 commit comments