|
From: | Auto mailings of changes to Lily Issues via Testlilyissues-auto |
Subject: | [Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] #5600 Fix hidden member templates in derived classes |
Date: | Thu, 14 Nov 2019 08:51:22 -0000 |
For context, please see the following threads:
https://lists.gnu.org/archive/html/lilypond-devel/2018-11/msg00019.html
http://lists.llvm.org/pipermail/cfe-users/2018-November/001417.html
* https://bugs.llvm.org/show_bug.cgi?id=39581
[issues:#5600] Fix hidden member templates in derived classes
Status: Started
Created: Thu Nov 14, 2019 08:34 AM UTC by Jonas Hahnfeld
Last Updated: Thu Nov 14, 2019 08:34 AM UTC
Owner: Jonas Hahnfeld
Fix hidden member templates in derived classes
According to Clang's interpretation of the C++ standard, "member
functions in the derived class override and/or hide member functions
with the same name and parameter types in a base class". This seems
to also hold for templated member functions and even if the code has
a using-declaration of the base class member.
This affects LilyPond's implementation of the method_finder template.
Luckily, the problem can be solved by just re-declaring the base
template specializations in each derived class instead of 'using' them.
The only drawback is that this doesn't work out-of-the-box for deeper
inheritance hierarchies. However, this only affects three ligature
engravers so I think it's worth the maintenance to just encode the
transitive inheritance manually.
http://codereview.appspot.com/559250043
Sent from sourceforge.net because address@hidden is subscribed to https://sourceforge.net/p/testlilyissues/issues/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/testlilyissues/admin/issues/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.
_______________________________________________ Testlilyissues-auto mailing list address@hidden https://lists.sourceforge.net/lists/listinfo/testlilyissues-auto
[Prev in Thread] | Current Thread | [Next in Thread] |