@@ -30,30 +30,27 @@ static const char *cfi_errstrs[12] = {
30
30
const char * cfiGetErrorString (int stat) {
31
31
32
32
switch (stat) {
33
- case CFI_SUCCESS: return cfi_errstrs[0 ] ; break ;
34
- case CFI_ERROR_BASE_ADDR_NULL: return cfi_errstrs[1 ] ; break ;
35
- case CFI_ERROR_BASE_ADDR_NOT_NULL: return cfi_errstrs[2 ] ; break ;
36
- case CFI_INVALID_ELEM_LEN: return cfi_errstrs[3 ] ; break ;
37
- case CFI_INVALID_RANK: return cfi_errstrs[4 ] ; break ;
38
- case CFI_INVALID_TYPE: return cfi_errstrs[5 ] ; break ;
39
- case CFI_INVALID_ATTRIBUTE: return cfi_errstrs[6 ] ; break ;
40
- case CFI_INVALID_EXTENT: return cfi_errstrs[7 ] ; break ;
41
- case CFI_INVALID_DESCRIPTOR: return cfi_errstrs[8 ] ; break ;
42
- case CFI_ERROR_MEM_ALLOCATION: return cfi_errstrs[9 ] ; break ;
43
- case CFI_ERROR_OUT_OF_BOUNDS: return cfi_errstrs[10 ] ; break ;
33
+ case CFI_SUCCESS: return cfi_errstrs[0 ];
34
+ case CFI_ERROR_BASE_ADDR_NULL: return cfi_errstrs[1 ];
35
+ case CFI_ERROR_BASE_ADDR_NOT_NULL: return cfi_errstrs[2 ];
36
+ case CFI_INVALID_ELEM_LEN: return cfi_errstrs[3 ];
37
+ case CFI_INVALID_RANK: return cfi_errstrs[4 ];
38
+ case CFI_INVALID_TYPE: return cfi_errstrs[5 ];
39
+ case CFI_INVALID_ATTRIBUTE: return cfi_errstrs[6 ];
40
+ case CFI_INVALID_EXTENT: return cfi_errstrs[7 ];
41
+ case CFI_INVALID_DESCRIPTOR: return cfi_errstrs[8 ];
42
+ case CFI_ERROR_MEM_ALLOCATION: return cfi_errstrs[9 ];
43
+ case CFI_ERROR_OUT_OF_BOUNDS: return cfi_errstrs[10 ];
44
44
}
45
45
46
46
return cfi_errstrs[11 ];
47
47
}
48
48
49
- #define CHECK_CFI (func ) \
50
- { \
51
- int stat = (func); \
52
- if (stat != CFI_SUCCESS) { \
53
- fprintf (stderr," %s:%d: CFI API failed with error: (%d) %s" , \
54
- __FILE__, __LINE__, stat, cfiGetErrorString (stat)); \
55
- } \
56
- } \
49
+ void check_cfi (int s)
50
+ {
51
+ if (s != CFI_SUCCESS)
52
+ std::cerr << __FILE__ << " :" << __LINE__ << " CFI API failed with error: (" << s << " ) " << cfiGetErrorString (s) << " \n " ;
53
+ }
57
54
58
55
template <typename Action>
59
56
class final_action
@@ -102,18 +99,18 @@ double estimate_pi(int n)
102
99
CFI_CDESC_T (2 ) samples_;
103
100
const auto samples = (CFI_cdesc_t *) &samples_;
104
101
105
- CHECK_CFI ( CFI_establish (samples,
106
- NULL ,
102
+ check_cfi ( CFI_establish (samples,
103
+ nullptr ,
107
104
CFI_attribute_allocatable,
108
105
CFI_type_double,
109
106
0 /* ignored */ ,
110
107
(CFI_rank_t) 2 ,
111
- NULL /* ignored */ ) )
108
+ nullptr /* ignored */ ) );
112
109
113
110
// Make sure we don't forget to deallocate
114
111
auto dealloc = finally ([&]{
115
112
if (samples->base_addr ) {
116
- CHECK_CFI ( CFI_deallocate (samples) )
113
+ check_cfi ( CFI_deallocate (samples) );
117
114
}
118
115
});
119
116
0 commit comments