@@ -201,6 +201,13 @@ class RefCounted {
201
201
unsigned trivial25 () const { return __c11_atomic_load ((volatile _Atomic (unsigned ) *)&v, __ATOMIC_RELAXED); }
202
202
bool trivial26 () { bool hasValue = v; return !hasValue; }
203
203
bool trivial27 (int v) { bool value; value = v ? 1 : 0 ; return value; }
204
+ bool trivial28 () { return true ; }
205
+ bool trivial29 () { return false ; }
206
+ unsigned trivial30 (unsigned v) { unsigned r = 0xff ; r |= v; return r; }
207
+ int trivial31 (int * v) { return v[0 ]; }
208
+ unsigned trivial32 () { return sizeof (int ); }
209
+ unsigned trivial33 () { return ~0xff ; }
210
+ template <unsigned v> unsigned trivial34 () { return v; }
204
211
205
212
static RefCounted& singleton () {
206
213
static RefCounted s_RefCounted;
@@ -273,6 +280,9 @@ class RefCounted {
273
280
return val;
274
281
}
275
282
283
+ int nonTrivial13 () { return ~otherFunction (); }
284
+ int nonTrivial14 () { int r = 0xff ; r |= otherFunction (); return r; }
285
+
276
286
unsigned v { 0 };
277
287
Number* number { nullptr };
278
288
Enum enumValue { Enum::Value1 };
@@ -322,6 +332,15 @@ class UnrelatedClass {
322
332
getFieldTrivial ().trivial25 (); // no-warning
323
333
getFieldTrivial ().trivial26 (); // no-warning
324
334
getFieldTrivial ().trivial27 (5 ); // no-warning
335
+ getFieldTrivial ().trivial28 (); // no-warning
336
+ getFieldTrivial ().trivial29 (); // no-warning
337
+ getFieldTrivial ().trivial30 (7 ); // no-warning
338
+ int a[] = {1 , 2 };
339
+ getFieldTrivial ().trivial31 (a); // no-warning
340
+ getFieldTrivial ().trivial32 (); // no-warning
341
+ getFieldTrivial ().trivial33 (); // no-warning
342
+ getFieldTrivial ().trivial34 <7 >(); // no-warning
343
+
325
344
RefCounted::singleton ().trivial18 (); // no-warning
326
345
RefCounted::singleton ().someFunction (); // no-warning
327
346
@@ -351,6 +370,10 @@ class UnrelatedClass {
351
370
// expected-warning@-1{{Call argument for 'this' parameter is uncounted and unsafe}}
352
371
getFieldTrivial ().nonTrivial12 ();
353
372
// expected-warning@-1{{Call argument for 'this' parameter is uncounted and unsafe}}
373
+ getFieldTrivial ().nonTrivial13 ();
374
+ // expected-warning@-1{{Call argument for 'this' parameter is uncounted and unsafe}}
375
+ getFieldTrivial ().nonTrivial14 ();
376
+ // expected-warning@-1{{Call argument for 'this' parameter is uncounted and unsafe}}
354
377
}
355
378
};
356
379
0 commit comments