lumiera_/tests
Ichthyostega 47f5390b18 Upgrade: address warnings -- shaddowing overloaded-virtual
This is an advanced diagnostics added (presumably) with GCC-13
and attempts to protect against an insidious side-effect of ''overload resolution''

Basically C++ (like its ancestor C) is oriented towards direct linkage and adds
the OO-style dynamic dispatch (through virtual functions and a VTable)
only as an extension, which must be requested explicitly.

Thus the resolution of ''overloads'' (as opposed to ''overridden'' virtual functions)
always takes precedence and happens within the directly visible scope,
which can cause the compiler to perform an implicit conversion instead of
invoking a different virtual function, which is defined in a base class.

However, this diagnostics seems to be implemented in an overly zealous way:
The compiler warns at the time of the type instantiation, and even in cases
where it is effectively impossible to encounter this dangerous shadowing situation.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109740

This leads to several ill-guided warnings in the Lumiera code base, which unfortunately
can only be addressed by disabling this diagnostics for all usages of some header.
The reason is, we often generate chains of template instantiations driven by type lists,
and in such usage pattern, it is not even possible to bring all the other inherited overloads
into scope (with a using `BASE::func` clause), because such a specification would be ambiguous
and result in a real compile error, because even the interface is generated from a chain of mix-in templates
2025-04-15 22:42:34 +02:00
..
basics Invocation: Analysis pertaining to storage for param data 2024-12-07 18:15:44 +01:00
core Upgrade: address warnings -- deprecated implicit copy 2025-04-15 18:32:52 +02:00
include
library Upgrade: address warnings -- shaddowing overloaded-virtual 2025-04-15 22:42:34 +02:00
operation Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
plugin Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
stage Library: handle chaining of iterator-pipelines 2024-11-24 23:53:38 +01:00
tool Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
vault Invocation: extract partial closure functionality 2025-02-16 23:16:46 +01:00
00helloworld.tests
00support.tests Library: option to provide an explicit random seed for tests 2024-11-12 15:49:15 +01:00
00test.tests
10errorhandling.tests
10exception.tests Library: discontinue setting error flag from Exceptions (see #1341) 2023-10-01 20:11:45 +02:00
11concurrency.tests LibraryApplication: tie DispatcherLoop to thread lifecycle 2023-10-12 20:23:59 +02:00
11list.tests
11locking.tests Library/Application: complete technology switch (closes #1279) 2023-10-16 01:44:04 +02:00
11luid.tests
11safeclib.tests
11time.tests
11vault-memory.tests Block-Flow: completed implementation of low-level cyclic extent storage 2023-07-12 21:55:50 +02:00
12metaprogramming.tests Invocation: complete closure-helper and tests 2025-02-18 00:24:55 +01:00
15library.tests Library: try out building a variant-model on top 2025-01-21 01:02:07 +01:00
16calculation.tests Library: now using controlled seed and replaced rand (closes #1378) 2024-11-17 19:45:41 +01:00
20config_lowlevel.tests
20threads.tests
22config_highlevel.tests
25fundamental.tests Library: prepare switch of Thread-wrapper to C++17 2023-09-21 23:23:55 +02:00
30backend-file.tests
30interfaces.tests
31plugin.tests
32scheduler.tests Library: Testsuite maintenance 2024-11-16 00:38:57 +01:00
40core.tests
41asset.tests
42query.tests
43session.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
44controller.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
45builder.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
46fixture.tests Dispatcher-Pipeline: create hook for self-validation 2023-06-12 01:18:59 +02:00
46node.tests Invocation: ++ Milestone ++ invoke complex render graph 2025-02-19 23:27:52 +01:00
47engine.tests Invocation: investigate forwarding an output data block 2024-12-23 02:31:29 +01:00
48playout.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
49core-integration.tests Dispatcher-Pipeline: prepare test for the new NodeGraphAttachment 2023-06-07 04:03:00 +02:00
51-gui-model.tests Segmentation: structure analysis for splitSplice operation 2023-05-02 04:29:34 +02:00
52-gui-control.tests
80-regression.tests
DIR_INFO
SConscript Upgrade: Fix TypeError in list concatenation 2025-03-16 16:46:44 +01:00
test.conf Testsuite: increase virtual memory limit 2023-10-04 22:42:37 +02:00
test.sh Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
testrunner.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00