Short: virtual inherit vs. inherit_list Date: 981208 Type: Bug State: Done - handled in 3.2.8-dev.151 From: Coogan Files which are inherited virtually are listed at least twice in the lists of inherits. -- This is an artifact of the breadth-search in inherit_list(). This makes (non-virtual) nomask functions in this file impossible. Abridged scenario: ------ c.c ------ nomask mixed inh_c() { return ...; } ------ a.c ------ virtual inherit "c"; virtual inherit "c"; Yields the error message: "Illegal to inherit 'nomask' function inh_c twice" ---------- Analysis ---------- This problem is not that the files are listed multiple times, but instead that the virtuality of the second inherit is taken in to account. Reason is a malformed check in prolang.y::copy_functions(), which was corrected in 3.2.8-dev.151 .