Ok, this is a real nuisance.  It would appear that the C++11 rules for access 
to protected members does _not_ permit a derived class to name them as 
`&Base::member` but requires naming them as `&Derived::member` even though the 
resulting type will be `Base::*`.  While this patch _did_ make a number of 
members public as part of the middle commit (more or less muddling through and 
wanting to clean this up later), I was not all that aware of this rather 
fundamental consequence, instead suspecting some other fluke I could fix up 
later.

In addition, the same kind of ack_finder magic removed by this patch is rather 
unavoidable for translator_listeners.  So this patch does not help in reducing 
the scope of necessary complexity while requiring inherited acknowledgers to be 
accessible by anybody rather than just the Engraver implementation and derived 
classes.

Consequently, I will be reverting it except for the first patch in the series 
while the reverts are still reasonably easy to do.


---

** [issues:#4885] Remove ack_finder/ack_find_base**

**Status:** Verified
**Labels:** Fixed_2_19_43 
**Created:** Sun Jun 05, 2016 07:16 PM UTC by David Kastrup
**Last Updated:** Fri Jun 17, 2016 10:43 AM UTC
**Owner:** David Kastrup


Remove ack_finder/ack_find_base

ADD_ACKNOWLEDGER and ADD_END_ACKNOWLEDGER can work without them when
the base is specified correctly when calling them inside of some
CLASS::boot ().


Also contains commits:

Let ADD_ACKNOWLEDGER state actual classes

Declaring the correct containing classes for acknowledgers
allows dropping a bunch of black magic.


Simplify ADD_{,END_}ACKNOWLEDGER

No explicit scopes are needed any more since they are run from within
the static member function CLASS::boot () .

http://codereview.appspot.com/295480044


---

Sent from sourceforge.net because [email protected] 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.
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
_______________________________________________
Testlilyissues-auto mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/testlilyissues-auto

Reply via email to