@@ -134,11 +134,13 @@ linker_script_merget::linker_script_merget(
134
134
replacement_predicates(
135
135
{replacement_predicatet (
136
136
" address of array's first member" ,
137
- [](const exprt &expr) -> const symbol_exprt & {
137
+ [](const exprt &expr) -> const symbol_exprt &
138
+ {
138
139
return to_symbol_expr (
139
- to_index_expr (to_address_of_expr (expr).object ()).index ());
140
+ to_index_expr (to_address_of_expr (expr).object ()).array ());
140
141
},
141
- [](const exprt &expr) {
142
+ [](const exprt &expr)
143
+ {
142
144
return expr.id () == ID_address_of &&
143
145
expr.type ().id () == ID_pointer &&
144
146
@@ -164,10 +166,10 @@ linker_script_merget::linker_script_merget(
164
166
}),
165
167
replacement_predicatet (
166
168
" address of array" ,
167
- [](const exprt &expr) -> const symbol_exprt & {
168
- return to_symbol_expr (to_address_of_expr (expr).object ());
169
- },
170
- []( const exprt &expr) {
169
+ [](const exprt &expr) -> const symbol_exprt &
170
+ { return to_symbol_expr (to_address_of_expr (expr).object ()); },
171
+ []( const exprt &expr)
172
+ {
171
173
return expr.id () == ID_address_of &&
172
174
expr.type ().id () == ID_pointer &&
173
175
@@ -176,10 +178,10 @@ linker_script_merget::linker_script_merget(
176
178
}),
177
179
replacement_predicatet (
178
180
" address of struct" ,
179
- [](const exprt &expr) -> const symbol_exprt & {
180
- return to_symbol_expr (to_address_of_expr (expr).object ());
181
- },
182
- []( const exprt &expr) {
181
+ [](const exprt &expr) -> const symbol_exprt &
182
+ { return to_symbol_expr (to_address_of_expr (expr).object ()); },
183
+ []( const exprt &expr)
184
+ {
183
185
return expr.id () == ID_address_of &&
184
186
expr.type ().id () == ID_pointer &&
185
187
@@ -190,20 +192,16 @@ linker_script_merget::linker_script_merget(
190
192
}),
191
193
replacement_predicatet (
192
194
" array variable" ,
193
- [](const exprt &expr) -> const symbol_exprt & {
194
- return to_symbol_expr (expr);
195
- },
196
- [](const exprt &expr) {
197
- return expr.id () == ID_symbol && expr.type ().id () == ID_array;
198
- }),
195
+ [](const exprt &expr) -> const symbol_exprt &
196
+ { return to_symbol_expr (expr); },
197
+ [](const exprt &expr)
198
+ { return expr.id () == ID_symbol && expr.type ().id () == ID_array; }),
199
199
replacement_predicatet (
200
200
" pointer (does not need pointerizing)" ,
201
- [](const exprt &expr) -> const symbol_exprt & {
202
- return to_symbol_expr (expr);
203
- },
204
- [](const exprt &expr) {
205
- return expr.id () == ID_symbol && expr.type ().id () == ID_pointer;
206
- })})
201
+ [](const exprt &expr) -> const symbol_exprt &
202
+ { return to_symbol_expr (expr); },
203
+ [](const exprt &expr)
204
+ { return expr.id () == ID_symbol && expr.type ().id () == ID_pointer; })})
207
205
{}
208
206
209
207
int linker_script_merget::pointerize_linker_defined_symbols (
0 commit comments