File tree Expand file tree Collapse file tree 2 files changed +14
-4
lines changed Expand file tree Collapse file tree 2 files changed +14
-4
lines changed Original file line number Diff line number Diff line change @@ -276,31 +276,31 @@ template <typename Type, std::size_t NumElements> class marray {
276
276
// && dataT != cl_half
277
277
template <typename T = DataT>
278
278
friend typename std::enable_if<std::is_integral<T>::value, marray>::type
279
- operator ~(marray &Lhs) {
279
+ operator ~(const marray &Lhs) {
280
280
marray Ret;
281
281
for (size_t I = 0 ; I < NumElements; ++I) {
282
282
Ret[I] = ~Lhs[I];
283
283
}
284
284
return Ret;
285
285
}
286
286
287
- friend marray<bool , NumElements> operator !(marray &Lhs) {
287
+ friend marray<bool , NumElements> operator !(const marray &Lhs) {
288
288
marray<bool , NumElements> Ret;
289
289
for (size_t I = 0 ; I < NumElements; ++I) {
290
290
Ret[I] = !Lhs[I];
291
291
}
292
292
return Ret;
293
293
}
294
294
295
- friend marray operator +(marray &Lhs) {
295
+ friend marray operator +(const marray &Lhs) {
296
296
marray Ret;
297
297
for (size_t I = 0 ; I < NumElements; ++I) {
298
298
Ret[I] = +Lhs[I];
299
299
}
300
300
return Ret;
301
301
}
302
302
303
- friend marray operator -(marray &Lhs) {
303
+ friend marray operator -(const marray &Lhs) {
304
304
marray Ret;
305
305
for (size_t I = 0 ; I < NumElements; ++I) {
306
306
Ret[I] = -Lhs[I];
Original file line number Diff line number Diff line change @@ -83,5 +83,15 @@ int main() {
83
83
b___ = t123 < 2 ;
84
84
assert (b___[0 ] == true && b___[1 ] == false && b___[2 ] == false );
85
85
86
+ // test const operator forms
87
+ t___ = -mint3{1 , 2 , 3 };
88
+ assert (t___[0 ] == -1 && t___[1 ] == -2 && t___[2 ] == -3 );
89
+ t___ = +mint3{1 , 2 , 3 };
90
+ assert (t___[0 ] == +1 && t___[1 ] == +2 && t___[2 ] == +3 );
91
+ t___ = ~mint3{1 , 2 , 3 };
92
+ assert (t___[0 ] == ~1 && t___[1 ] == ~2 && t___[2 ] == ~3 );
93
+ b___ = !mint3{0 , 1 , 2 };
94
+ assert (b___[0 ] == true && b___[1 ] == false && b___[2 ] == false );
95
+
86
96
return 0 ;
87
97
}
You can’t perform that action at this time.
0 commit comments