File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed
test/Interop/Cxx/operators Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -482,6 +482,15 @@ class HasStaticOperatorCallBase {
482
482
static int operator ()(int x) { return x + 42 ; }
483
483
};
484
484
485
+ class HasStaticOperatorCallBaseNonTrivial : public NonTrivial {
486
+ public:
487
+ HasStaticOperatorCallBaseNonTrivial () {}
488
+ HasStaticOperatorCallBaseNonTrivial (const HasStaticOperatorCallBaseNonTrivial &self) : NonTrivial(self) {}
489
+ HasStaticOperatorCallBaseNonTrivial (HasStaticOperatorCallBaseNonTrivial &&self) : NonTrivial(self) {}
490
+
491
+ static int operator ()(const NonTrivial &arg) { return arg.f + 42 ; }
492
+ };
493
+
485
494
class HasStaticOperatorCallDerived : public HasStaticOperatorCallBase {};
486
495
487
496
class HasStaticOperatorCallWithConstOperator {
Original file line number Diff line number Diff line change @@ -443,6 +443,13 @@ OperatorsTestSuite.test("HasStaticOperatorCallBase.call") {
443
443
expectEqual ( 43 , res)
444
444
}
445
445
446
+ OperatorsTestSuite . test ( " HasStaticOperatorCallBase2.call " ) {
447
+ let m = NonTrivial ( )
448
+ let h = HasStaticOperatorCallBaseNonTrivial ( )
449
+ let res = h ( m)
450
+ expectEqual ( 48 , res)
451
+ }
452
+
446
453
OperatorsTestSuite . test ( " HasStaticOperatorCallDerived.call " ) {
447
454
let h = HasStaticOperatorCallDerived ( )
448
455
let res = h ( 0 )
You can’t perform that action at this time.
0 commit comments