File tree Expand file tree Collapse file tree 4 files changed +35
-0
lines changed
csharp/ql/test/library-tests/dispatch Expand file tree Collapse file tree 4 files changed +35
-0
lines changed Original file line number Diff line number Diff line change 238
238
| ViableCallable.cs:458:10:458:14 | M5<> | ViableCallable.cs:444:23:444:27 | M2<> |
239
239
| ViableCallable.cs:475:10:475:12 | Run | ViableCallable.cs:468:10:468:11 | M2 |
240
240
| ViableCallable.cs:475:10:475:12 | Run | ViableCallable.cs:473:17:473:18 | M1 |
241
+ | ViableCallable.cs:492:10:492:12 | Run | ViableCallable.cs:487:32:487:32 | + |
242
+ | ViableCallable.cs:492:10:492:12 | Run | ViableCallable.cs:488:40:488:40 | checked + |
243
+ | ViableCallable.cs:492:10:492:12 | Run | ViableCallable.cs:489:28:489:35 | explicit conversion |
244
+ | ViableCallable.cs:492:10:492:12 | Run | ViableCallable.cs:490:28:490:35 | checked explicit conversion |
Original file line number Diff line number Diff line change 471
471
| ViableCallable.cs:461:9:461:30 | call to method M2<T> | C17.M2<T>(Func<T>) |
472
472
| ViableCallable.cs:478:9:478:14 | call to method M1 | C18.M1() |
473
473
| ViableCallable.cs:481:9:481:14 | call to method M2 | I2.M2() |
474
+ | ViableCallable.cs:495:18:495:22 | call to operator + | C19.+(C19, C19) |
475
+ | ViableCallable.cs:498:26:498:30 | call to operator checked + | C19.checked +(C19, C19) |
476
+ | ViableCallable.cs:501:18:501:23 | call to operator explicit conversion | C19.explicit conversion(C19) |
477
+ | ViableCallable.cs:504:26:504:31 | call to operator checked explicit conversion | C19.checked explicit conversion(C19) |
Original file line number Diff line number Diff line change @@ -480,4 +480,27 @@ void Run(I2 i)
480
480
// Viable callables: I2.M2()
481
481
i . M2 ( ) ;
482
482
}
483
+ }
484
+
485
+ class C19
486
+ {
487
+ public static C19 operator + ( C19 x , C19 y ) => throw null ;
488
+ public static C19 operator checked + ( C19 x , C19 y ) => throw null ;
489
+ public static explicit operator int ( C19 x ) => throw null ;
490
+ public static explicit operator checked int ( C19 x ) => throw null ;
491
+
492
+ void Run ( C19 c )
493
+ {
494
+ // Viable callables: C19.op_Addition()
495
+ var c1 = c + c ;
496
+
497
+ // Viable callables: C19.op_CheckedAddition()
498
+ var c2 = checked ( c + c ) ;
499
+
500
+ // Viable callables: C19.op_Explicit()
501
+ var n1 = ( int ) c ;
502
+
503
+ // Viable callables: C19.op_CheckedExplicit()
504
+ var n2 = checked ( ( int ) c ) ;
505
+ }
483
506
}
Original file line number Diff line number Diff line change 268
268
| ViableCallable.cs:423:9:423:21 | call to method M<String> | M<> | A5 |
269
269
| ViableCallable.cs:478:9:478:14 | call to method M1 | M1 | C18 |
270
270
| ViableCallable.cs:481:9:481:14 | call to method M2 | M2 | I2 |
271
+ | ViableCallable.cs:495:18:495:22 | call to operator + | + | C19 |
272
+ | ViableCallable.cs:498:26:498:30 | call to operator checked + | checked + | C19 |
273
+ | ViableCallable.cs:501:18:501:23 | call to operator explicit conversion | explicit conversion | C19 |
274
+ | ViableCallable.cs:504:26:504:31 | call to operator checked explicit conversion | checked explicit conversion | C19 |
You can’t perform that action at this time.
0 commit comments