QDoc: Keep case-distinct member links valid
Links to members whose names differ only in case can point to a
fragment that the target page never emits. This breaks links from
other pages, and the target can change when an obsolete member links
to it.
This change makes QDoc preserve the distinction between those anchors,
so that links and target pages agree regardless of registration order.
Readers can follow member links and help references to the intended
documentation.
[ChangeLog][QDoc] Links to members with names differing only in case
resolve to the correct documentation anchor.
Fixes: QTBUG-151243
Pick-to: 6.12
Change-Id: Ida7409dddf033c311a2037d528061b548cf85cb4
Reviewed-by: Topi Reinio <topi.reinio@qt.io>
| commit | fdcc7b78102ac095dd5bb2f43c0ebd17ff10d186 |
| parent | 492cd79d2c1b911714a0d074a8acb1879eb0adea |
| author | Paul Wicking <paul.wicking@qt.io> |
| committer | Paul Wicking <paul.wicking@qt.io> |
| commit time | Wed, 7 Oct 2026 13:56:49 +0000 |
- M src/qdoc/qdoc/src/qdoc/xmlgenerator.cpp
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/case_distinct_anchors.qdocconf
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/bar-members.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/bar-obsolete.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/bar.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/casedistinctanchors-module.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/casedistinctanchors.index
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/foo-members.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/foo-obsolete.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/foo.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/expected/html/other.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/src/foo.h
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/case_distinct_anchors/src/other.qdoc