Skip to content

Commit b8fad34

Browse files
committed
Use non-deprecated variants of parent constructors
Several *_exprt constructors invoked deprecated constructors of their parent class. Use non-deprecated variants instead to make removal of the deprecated constructors safe.
1 parent 49ac569 commit b8fad34

File tree

4 files changed

+29
-46
lines changed

4 files changed

+29
-46
lines changed

src/ansi-c/ansi_c_declaration.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Author: Daniel Kroening, [email protected]
2020
class ansi_c_declaratort : public nullary_exprt
2121
{
2222
public:
23-
ansi_c_declaratort() : nullary_exprt(ID_declarator)
23+
ansi_c_declaratort() : nullary_exprt(ID_declarator, typet())
2424
{
2525
}
2626

src/util/byte_operators.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,11 @@ class byte_extract_exprt:public binary_exprt
3636

3737
byte_extract_exprt(
3838
irep_idt _id,
39-
const exprt &_op, const exprt &_offset, const typet &_type):
40-
binary_exprt(_id, _type)
39+
const exprt &_op,
40+
const exprt &_offset,
41+
const typet &_type)
42+
: binary_exprt(_op, _id, _offset, _type)
4143
{
42-
op()=_op;
43-
offset()=_offset;
4444
}
4545

4646
exprt &op() { return op0(); }

src/util/std_expr.h

Lines changed: 23 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -2135,10 +2135,9 @@ class namespacet;
21352135
class object_descriptor_exprt:public binary_exprt
21362136
{
21372137
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))
21392140
{
2140-
op0().id(ID_unknown);
2141-
op1().id(ID_unknown);
21422141
}
21432142

21442143
void build(const exprt &expr, const namespacet &ns);
@@ -2207,17 +2206,18 @@ inline void validate_expr(const object_descriptor_exprt &value)
22072206
class dynamic_object_exprt:public binary_exprt
22082207
{
22092208
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))
22112211
{
2212-
op0().id(ID_unknown);
2213-
op1().id(ID_unknown);
22142212
}
22152213

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)
22182220
{
2219-
op0().id(ID_unknown);
2220-
op1().id(ID_unknown);
22212221
}
22222222

22232223
void set_instance(unsigned int instance);
@@ -2417,25 +2417,18 @@ class and_exprt:public multi_ary_exprt
24172417
{
24182418
}
24192419

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())
24222422
{
2423-
add_to_operands(op0, op1, op2);
24242423
}
24252424

24262425
and_exprt(
24272426
const exprt &op0,
24282427
const exprt &op1,
24292428
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())
24322431
{
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;
24392432
}
24402433
};
24412434

@@ -2539,25 +2532,18 @@ class or_exprt:public multi_ary_exprt
25392532
{
25402533
}
25412534

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())
25442537
{
2545-
add_to_operands(op0, op1, op2);
25462538
}
25472539

25482540
or_exprt(
25492541
const exprt &op0,
25502542
const exprt &op1,
25512543
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())
25542546
{
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;
25612547
}
25622548
};
25632549

@@ -2706,10 +2692,9 @@ class bitor_exprt:public multi_ary_exprt
27062692
{
27072693
}
27082694

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())
27112697
{
2712-
add_to_operands(_op0, _op1);
27132698
}
27142699
};
27152700

@@ -2815,10 +2800,9 @@ class bitand_exprt:public multi_ary_exprt
28152800
{
28162801
}
28172802

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())
28202805
{
2821-
add_to_operands(_op0, _op1);
28222806
}
28232807
};
28242808

@@ -4508,9 +4492,8 @@ class function_application_exprt:public binary_exprt
45084492
const symbol_exprt &_function,
45094493
const argumentst &_arguments,
45104494
const typet &_type)
4511-
: binary_exprt(ID_function_application, _type)
4495+
: binary_exprt(_function, ID_function_application, exprt(), _type)
45124496
{
4513-
function()=_function;
45144497
arguments() = _arguments;
45154498
}
45164499

src/util/string_constant.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Author: Daniel Kroening, [email protected]
1313
#include "std_expr.h"
1414

1515
string_constantt::string_constantt(const irep_idt &_value)
16-
: nullary_exprt(ID_string_constant)
16+
: nullary_exprt(ID_string_constant, typet())
1717
{
1818
set_value(_value);
1919
}

0 commit comments

Comments
 (0)