1 /*
2 TEST_OUTPUT:
3 ---
4 fail_compilation/fail343.d(22): Error: function fail343.TimedApp.run cannot override final function I.fail343.Timer.run
5 fail_compilation/fail343.d(22): Error: function fail343.TimedApp.run cannot override final function Application.fail343.Application.run
6 ---
7 */
8 
9 interface Timer
10 {
run()11     final void run() { }
12 }
13 
14 interface I : Timer { }
15 interface Application
16 {
run()17     final void run() { }
18 }
19 class TimedApp : I, Application
20 {
21     // cannot define run()
run()22     void run() { }
23 }
24