Edit report at https://bugs.php.net/bug.php?id=62204&edit=1
ID: 62204 Comment by: alasdair at softhome dot net Reported by: g...@php.net Summary: Final keyword not enforced for methods from traits Status: Assigned Type: Bug Package: Scripting Engine problem PHP Version: 5.4Git-2012-06-01 (Git) Assigned To: gron Block user comment: N Private report: N New Comment: Still exists in PHP 5.4.4-14 on Debian Wheezy. Previous Comments: ------------------------------------------------------------------------ [2013-03-19 12:30:10] wolters dot fl at gmail dot com This bug still exists in PHP version 5.4.13. I've created a simple example at https://gist.github.com/FlorianWolters/5195674 to reproduce the behaviour described in the bug report. IMHO the "final" keyword MUST be enforced when used in a trait. ------------------------------------------------------------------------ [2012-06-01 07:53:36] g...@php.net Description: ------------ Reported by Scott MacVicar on the mailing list (May 4th). Added here to not forget about it. > On 04 May 2012, at 20:30, Scott MacVicar wrote: > > This caused a few bugs for us / confusion. The final keyword is accepted inside a trait but it the class also defines a method without the final keyword this takes precedence. > > Two solutions: > Enforce final when a trait defines - https://whisky.macvicar.net/patches/0001- If-a-trait-declares-a-method- as-final-enforce-that.patch > > Prohibit final form being used in a trait - https://whisky.macvicar.net/patches/002-traits-Disable-use-of- final-keyword.patch > > I'm for the first solution here > > - S ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=62204&edit=1