@@ -264,6 +264,12 @@ class code_skipt:public codet
264
264
code_skipt ():codet(ID_skip)
265
265
{
266
266
}
267
+
268
+ protected:
269
+ using codet::op0;
270
+ using codet::op1;
271
+ using codet::op2;
272
+ using codet::op3;
267
273
};
268
274
269
275
template <> inline bool can_cast_expr<code_skipt>(const exprt &base)
@@ -343,6 +349,12 @@ class code_assignt:public codet
343
349
344
350
validate (code, ns, vm);
345
351
}
352
+
353
+ protected:
354
+ using codet::op0;
355
+ using codet::op1;
356
+ using codet::op2;
357
+ using codet::op3;
346
358
};
347
359
348
360
template <> inline bool can_cast_expr<code_assignt>(const exprt &base)
@@ -481,6 +493,12 @@ class code_deadt:public codet
481
493
" removing a non-symbol: " +
482
494
id2string (to_symbol_expr (code.op0 ()).get_identifier ()) + " from scope" );
483
495
}
496
+
497
+ protected:
498
+ using codet::op0;
499
+ using codet::op1;
500
+ using codet::op2;
501
+ using codet::op3;
484
502
};
485
503
486
504
template <> inline bool can_cast_expr<code_deadt>(const exprt &base)
@@ -538,6 +556,12 @@ class code_assumet:public codet
538
556
{
539
557
return op0 ();
540
558
}
559
+
560
+ protected:
561
+ using codet::op0;
562
+ using codet::op1;
563
+ using codet::op2;
564
+ using codet::op3;
541
565
};
542
566
543
567
template <> inline bool can_cast_expr<code_assumet>(const exprt &base)
@@ -589,6 +613,12 @@ class code_assertt:public codet
589
613
{
590
614
return op0 ();
591
615
}
616
+
617
+ protected:
618
+ using codet::op0;
619
+ using codet::op1;
620
+ using codet::op2;
621
+ using codet::op3;
592
622
};
593
623
594
624
template <> inline bool can_cast_expr<code_assertt>(const exprt &base)
@@ -692,6 +722,12 @@ class code_ifthenelset:public codet
692
722
{
693
723
return static_cast <codet &>(op2 ());
694
724
}
725
+
726
+ protected:
727
+ using codet::op0;
728
+ using codet::op1;
729
+ using codet::op2;
730
+ using codet::op3;
695
731
};
696
732
697
733
template <> inline bool can_cast_expr<code_ifthenelset>(const exprt &base)
@@ -754,6 +790,12 @@ class code_switcht:public codet
754
790
{
755
791
return static_cast <codet &>(op1 ());
756
792
}
793
+
794
+ protected:
795
+ using codet::op0;
796
+ using codet::op1;
797
+ using codet::op2;
798
+ using codet::op3;
757
799
};
758
800
759
801
template <> inline bool can_cast_expr<code_switcht>(const exprt &base)
@@ -814,6 +856,12 @@ class code_whilet:public codet
814
856
{
815
857
return static_cast <codet &>(op1 ());
816
858
}
859
+
860
+ protected:
861
+ using codet::op0;
862
+ using codet::op1;
863
+ using codet::op2;
864
+ using codet::op3;
817
865
};
818
866
819
867
template <> inline bool can_cast_expr<code_whilet>(const exprt &base)
@@ -874,6 +922,12 @@ class code_dowhilet:public codet
874
922
{
875
923
return static_cast <codet &>(op1 ());
876
924
}
925
+
926
+ protected:
927
+ using codet::op0;
928
+ using codet::op1;
929
+ using codet::op2;
930
+ using codet::op3;
877
931
};
878
932
879
933
template <> inline bool can_cast_expr<code_dowhilet>(const exprt &base)
@@ -963,6 +1017,12 @@ class code_fort:public codet
963
1017
{
964
1018
return static_cast <codet &>(op3 ());
965
1019
}
1020
+
1021
+ protected:
1022
+ using codet::op0;
1023
+ using codet::op1;
1024
+ using codet::op2;
1025
+ using codet::op3;
966
1026
};
967
1027
968
1028
template <> inline bool can_cast_expr<code_fort>(const exprt &base)
@@ -1012,6 +1072,12 @@ class code_gotot:public codet
1012
1072
{
1013
1073
return get (ID_destination);
1014
1074
}
1075
+
1076
+ protected:
1077
+ using codet::op0;
1078
+ using codet::op1;
1079
+ using codet::op2;
1080
+ using codet::op3;
1015
1081
};
1016
1082
1017
1083
template <> inline bool can_cast_expr<code_gotot>(const exprt &base)
@@ -1165,6 +1231,12 @@ class code_function_callt:public codet
1165
1231
1166
1232
validate (code, ns, vm);
1167
1233
}
1234
+
1235
+ protected:
1236
+ using codet::op0;
1237
+ using codet::op1;
1238
+ using codet::op2;
1239
+ using codet::op3;
1168
1240
};
1169
1241
1170
1242
template <> inline bool can_cast_expr<code_function_callt>(const exprt &base)
@@ -1229,6 +1301,12 @@ class code_returnt:public codet
1229
1301
{
1230
1302
DATA_CHECK (vm, code.operands ().size () == 1 , " return must have one operand" );
1231
1303
}
1304
+
1305
+ protected:
1306
+ using codet::op0;
1307
+ using codet::op1;
1308
+ using codet::op2;
1309
+ using codet::op3;
1232
1310
};
1233
1311
1234
1312
template <> inline bool can_cast_expr<code_returnt>(const exprt &base)
@@ -1298,6 +1376,12 @@ class code_labelt:public codet
1298
1376
{
1299
1377
return static_cast <const codet &>(op0 ());
1300
1378
}
1379
+
1380
+ protected:
1381
+ using codet::op0;
1382
+ using codet::op1;
1383
+ using codet::op2;
1384
+ using codet::op3;
1301
1385
};
1302
1386
1303
1387
template <> inline bool can_cast_expr<code_labelt>(const exprt &base)
@@ -1369,6 +1453,12 @@ class code_switch_caset:public codet
1369
1453
{
1370
1454
return static_cast <const codet &>(op1 ());
1371
1455
}
1456
+
1457
+ protected:
1458
+ using codet::op0;
1459
+ using codet::op1;
1460
+ using codet::op2;
1461
+ using codet::op3;
1372
1462
};
1373
1463
1374
1464
template <> inline bool can_cast_expr<code_switch_caset>(const exprt &base)
@@ -1405,6 +1495,12 @@ class code_breakt:public codet
1405
1495
code_breakt ():codet(ID_break)
1406
1496
{
1407
1497
}
1498
+
1499
+ protected:
1500
+ using codet::op0;
1501
+ using codet::op1;
1502
+ using codet::op2;
1503
+ using codet::op3;
1408
1504
};
1409
1505
1410
1506
template <> inline bool can_cast_expr<code_breakt>(const exprt &base)
@@ -1435,6 +1531,12 @@ class code_continuet:public codet
1435
1531
code_continuet ():codet(ID_continue)
1436
1532
{
1437
1533
}
1534
+
1535
+ protected:
1536
+ using codet::op0;
1537
+ using codet::op1;
1538
+ using codet::op2;
1539
+ using codet::op3;
1438
1540
};
1439
1541
1440
1542
template <> inline bool can_cast_expr<code_continuet>(const exprt &base)
@@ -1524,6 +1626,12 @@ class code_expressiont:public codet
1524
1626
{
1525
1627
return op0 ();
1526
1628
}
1629
+
1630
+ protected:
1631
+ using codet::op0;
1632
+ using codet::op1;
1633
+ using codet::op2;
1634
+ using codet::op3;
1527
1635
};
1528
1636
1529
1637
template <> inline bool can_cast_expr<code_expressiont>(const exprt &base)
@@ -2001,6 +2109,12 @@ class code_push_catcht:public codet
2001
2109
const exception_listt &exception_list () const {
2002
2110
return (const exception_listt &)find (ID_exception_list).get_sub ();
2003
2111
}
2112
+
2113
+ protected:
2114
+ using codet::op0;
2115
+ using codet::op1;
2116
+ using codet::op2;
2117
+ using codet::op3;
2004
2118
};
2005
2119
2006
2120
template <> inline bool can_cast_expr<code_push_catcht>(const exprt &base)
@@ -2032,6 +2146,12 @@ class code_pop_catcht:public codet
2032
2146
code_pop_catcht ():codet(ID_pop_catch)
2033
2147
{
2034
2148
}
2149
+
2150
+ protected:
2151
+ using codet::op0;
2152
+ using codet::op1;
2153
+ using codet::op2;
2154
+ using codet::op3;
2035
2155
};
2036
2156
2037
2157
template <> inline bool can_cast_expr<code_pop_catcht>(const exprt &base)
@@ -2077,6 +2197,12 @@ class code_landingpadt:public codet
2077
2197
{
2078
2198
return op0 ();
2079
2199
}
2200
+
2201
+ protected:
2202
+ using codet::op0;
2203
+ using codet::op1;
2204
+ using codet::op2;
2205
+ using codet::op3;
2080
2206
};
2081
2207
2082
2208
template <> inline bool can_cast_expr<code_landingpadt>(const exprt &base)
@@ -2153,6 +2279,12 @@ class code_try_catcht:public codet
2153
2279
{
2154
2280
add_to_operands (to_catch, code_catch);
2155
2281
}
2282
+
2283
+ protected:
2284
+ using codet::op0;
2285
+ using codet::op1;
2286
+ using codet::op2;
2287
+ using codet::op3;
2156
2288
};
2157
2289
2158
2290
template <> inline bool can_cast_expr<code_try_catcht>(const exprt &base)
0 commit comments