lumiera_/tests/library
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
..
advice Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
c-lib Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
diff Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
idi Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
meta Upgrade: address warnings -- shaddowing overloaded-virtual 2025-04-15 22:42:34 +02:00
query Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
stat Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
test Upgrade: address warnings -- pessimizing-move 2025-04-15 16:46:00 +02:00
allocation-cluster-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
app-config-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
branch-case-test.cpp Library: test and documentation for the new variant-helper 2025-01-21 04:53:53 +01:00
builder-qualifier-support-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
cmdline-wrapper-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
custom-shared-ptr-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
del-stash-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
DIR_INFO re-arrange tests according to layer structure 2013-01-07 05:43:01 +01:00
exception-error-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
format-cout-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
format-helper-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
format-string-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
fun-hash-dispatch-test.cpp Invocation: define aspects of ProcID to cover 2025-01-11 17:05:53 +01:00
gnuplot-gen-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
hash-generator-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
hash-indexed-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
hash-standard-to-boost-bridge-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
helloworldtest.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
hetero-data-test.cpp Invocation: complete simple test case regarding TurnoutSystem 2025-02-18 23:55:58 +01:00
incidence-count-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
index-iter-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
ios-savepoint-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
item-wrapper-test.cpp Invocation: extract partial closure functionality 2025-02-16 23:16:46 +01:00
iter-adapter-stl-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-adapter-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-chain-search-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-core-adapter-test.cpp Library: simplify state-core wrapper parameters 2024-11-26 23:22:46 +01:00
iter-cursor-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-explorer-test.cpp Library: simplify state-core wrapper parameters 2024-11-26 23:22:46 +01:00
iter-queue-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-source-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-stack-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
iter-zip-test.cpp Upgrade: allow for build on »Trixie« with GCC-14 2025-04-06 18:18:52 +02:00
itertools-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
lazy-init-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
life-cycle-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
linked-elements-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
multifact-argument-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
multifact-singleton-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
multifact-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
null-value-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
opaque-holder-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
opaque-unchecked-buffer-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
optional-ref-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
parse-test.cpp Library: complete test and documentaton of parsing support 2025-01-29 23:51:13 +01:00
path-array-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
polymorphic-value-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
query-text-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
random-concurrent-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
random-draw-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
random-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
rational-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
ref-array-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
removefromsettest.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
replaceable-item-test.cpp Upgrade: address warnings -- deprecated implicit copy 2025-04-15 18:32:52 +02:00
result-test.cpp Library: shorten display of unsigned types 2024-11-22 22:02:45 +01:00
scoped-collection-test.cpp Library: a step towards variadic type sequences (see #987) 2025-02-16 21:10:06 +01:00
scoped-holder-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
scoped-holder-transfer-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
scoped-ptrvect-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
search-path-splitter-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
several-builder-test.cpp Invocation: Argument-spec evaluation sufficiently complete for now 2025-02-02 17:22:16 +01:00
simple-allocator-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
split-splice-test.cpp Upgrade: compile fixes for GCC-12 2025-03-16 16:52:26 +01:00
sub-id-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
symbol-hashtable-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
symbol-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
sync-barrier-performance-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
sync-barrier-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
sync-classlock-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
sync-locking-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
sync-timedwait-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
sync-waiting-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
text-template-test.cpp Library: simplify state-core wrapper parameters 2024-11-26 23:22:46 +01:00
thread-wrapper-autonomous-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
thread-wrapper-join-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
thread-wrapper-lifecycle-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
thread-wrapper-self-recognition-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
thread-wrapper-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
typed-allocation-manager-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
unique-malloc-owner-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-collection-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-floordiv-test.cpp Library: shorten display of unsigned types 2024-11-22 22:02:45 +01:00
util-floorwrap-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-foreach-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-identity-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-parse-bool-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-sanitised-identifier-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
util-tuple-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
variant-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
vector-transfer-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
verb-function-dispatch-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
verb-visitor-dispatch-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00