From f7744f555028f00cce713110bd29fd30a6b6a5ae Mon Sep 17 00:00:00 2001 From: jonschz <17198703+jonschz@users.noreply.github.com> Date: Mon, 26 May 2025 07:25:47 +0200 Subject: [PATCH] Fix ambiguous matches in BETA10 (#1520) * Fix ambiguous matches in BETA10 * Add more functions, fix one LINE annotation * Fix LEGO1 matches --------- Co-authored-by: jonschz --- .../lego/legoomni/include/legopathboundary.h | 6 ++--- LEGO1/mxdirectx/mxdirectxinfo.h | 26 +++++++++++-------- LEGO1/omni/include/mxatom.h | 8 ++++-- LEGO1/omni/include/mxparam.h | 2 +- LEGO1/omni/include/mxpresenterlist.h | 2 +- LEGO1/omni/include/mxstreamer.h | 2 +- LEGO1/omni/src/video/flic.cpp | 2 +- LEGO1/viewmanager/viewlodlist.h | 6 +++-- 8 files changed, 32 insertions(+), 22 deletions(-) diff --git a/LEGO1/lego/legoomni/include/legopathboundary.h b/LEGO1/lego/legoomni/include/legopathboundary.h index 7a34b9b6..522122a4 100644 --- a/LEGO1/lego/legoomni/include/legopathboundary.h +++ b/LEGO1/lego/legoomni/include/legopathboundary.h @@ -182,7 +182,7 @@ private: // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::lower_bound // TEMPLATE: BETA10 0x10082b90 -// _Tree >::_Kfn,LegoAnimPresenterSetCompare,allocator >::const_iterator::operator++ +// ??Econst_iterator@?$_Tree@PAVLegoAnimPresenter@@PAV1@U_Kfn@?$set@PAVLegoAnimPresenter@@ULegoAnimPresenterSetCompare@@V?$allocator@PAVLegoAnimPresenter@@@@@@ULegoAnimPresenterSetCompare@@V?$allocator@PAVLegoAnimPresenter@@@@@@QAE?AV01@H@Z // TEMPLATE: BETA10 0x10082ee0 // set >::end @@ -191,13 +191,13 @@ private: // _Tree >::_Kfn,LegoAnimPresenterSetCompare,allocator >::const_iterator::operator* // TEMPLATE: BETA10 0x10021dc0 -// Set::Set +// ??0?$Set@PAVLegoPathActor@@ULegoPathActorSetCompare@@@@QAE@ABV0@@Z // TEMPLATE: BETA10 0x100202d0 // set >::begin // TEMPLATE: BETA10 0x10020030 -// _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::const_iterator::operator++ +// ??Econst_iterator@?$_Tree@PAVLegoPathActor@@PAV1@U_Kfn@?$set@PAVLegoPathActor@@ULegoPathActorSetCompare@@V?$allocator@PAVLegoPathActor@@@@@@ULegoPathActorSetCompare@@V?$allocator@PAVLegoPathActor@@@@@@QAE?AV01@H@Z // TEMPLATE: BETA10 0x100203d0 // set >::end diff --git a/LEGO1/mxdirectx/mxdirectxinfo.h b/LEGO1/mxdirectx/mxdirectxinfo.h index ba6b1f00..3fbecfc8 100644 --- a/LEGO1/mxdirectx/mxdirectxinfo.h +++ b/LEGO1/mxdirectx/mxdirectxinfo.h @@ -168,12 +168,12 @@ struct MxDriver { // TEMPLATE: CONFIG 0x401b00 // TEMPLATE: LEGO1 0x1009c400 // TEMPLATE: BETA10 0x1011fad0 -// list >::insert +// ?insert@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QAE?AViterator@1@V21@ABUDirect3DDeviceInfo@@@Z // TEMPLATE: CONFIG 0x401b60 // TEMPLATE: LEGO1 0x1009c460 // TEMPLATE: BETA10 0x1011f9a0 -// list >::insert +// ?insert@?$list@UMxDisplayMode@@V?$allocator@UMxDisplayMode@@@@@@QAE?AViterator@1@V21@ABUMxDisplayMode@@@Z // SYNTHETIC: CONFIG 0x402be0 // SYNTHETIC: LEGO1 0x1009d450 @@ -248,34 +248,38 @@ protected: // list >::iterator::operator* // TEMPLATE: BETA10 0x1011c200 -// list >::iterator::operator++ +// ??Eiterator@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QAE?AV01@H@Z // TEMPLATE: BETA10 0x1011c290 -// list >::begin +// ?begin@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QAE?AViterator@1@XZ +// Note: could also be +// ?begin@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QBE?AVconst_iterator@1@XZ // TEMPLATE: BETA10 0x1011c300 -// list >::end +// ?end@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QAE?AViterator@1@XZ +// Note: could also be +// ?end@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QBE?AVconst_iterator@1@XZ // TEMPLATE: BETA10 0x1011c4d0 // list >::iterator::operator* // TEMPLATE: BETA10 0x1011c520 -// list >::iterator::operator++ +// ??Eiterator@?$list@UMxDriver@@V?$allocator@UMxDriver@@@@@@QAE?AV01@H@Z // TEMPLATE: BETA10 0x1011c560 -// list >::iterator::operator++ +// ??Eiterator@?$list@UMxDriver@@V?$allocator@UMxDriver@@@@@@QAEAAV01@XZ // TEMPLATE: BETA10 0x1011c590 // list >::_Acc::_Next // TEMPLATE: BETA10 0x1011c5b0 -// list >::begin +// ?begin@?$list@UMxDriver@@V?$allocator@UMxDriver@@@@@@QAE?AViterator@1@XZ // TEMPLATE: BETA10 0x1011c5f0 // list >::iterator::iterator // TEMPLATE: BETA10 0x1011c620 -// list >::end +// ?end@?$list@UMxDriver@@V?$allocator@UMxDriver@@@@@@QAE?AViterator@1@XZ // TEMPLATE: BETA10 0x1011c690 // ??9@YAHABViterator@?$list@UMxDriver@@V?$allocator@UMxDriver@@@@@@0@Z @@ -290,10 +294,10 @@ protected: // list >::size // TEMPLATE: BETA10 0x1011d3e0 -// list >::erase +// ?erase@?$list@UDirect3DDeviceInfo@@V?$allocator@UDirect3DDeviceInfo@@@@@@QAE?AViterator@1@V21@@Z // TEMPLATE: BETA10 0x1011d570 -// list >::erase +// ?erase@?$list@UMxDriver@@V?$allocator@UMxDriver@@@@@@QAE?AViterator@1@V21@@Z // TEMPLATE: BETA10 0x1011d6a0 // list >::_Freenode diff --git a/LEGO1/omni/include/mxatom.h b/LEGO1/omni/include/mxatom.h index 44d467e3..06da0e84 100644 --- a/LEGO1/omni/include/mxatom.h +++ b/LEGO1/omni/include/mxatom.h @@ -143,8 +143,10 @@ private: // clang-format off // TEMPLATE: LEGO1 0x100af7e0 +// ?erase@?$_Tree@PAVMxAtom@@PAV1@U_Kfn@?$set@PAVMxAtom@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@QAE?AViterator@1@V21@@Z + // TEMPLATE: BETA10 0x10131210 -// _Tree >::_Kfn,MxAtomCompare,allocator >::erase +// ?erase@?$_Tree@PAVMxAtom@@PAV1@U_Kfn@?$set@PAVMxAtom@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@QAE?AViterator@1@V21@0@Z // clang-format on // clang-format off @@ -178,7 +180,9 @@ private: // clang-format off // TEMPLATE: BETA10 0x10132170 -// _Tree >::_Kfn,MxAtomCompare,allocator >::begin +// ?begin@?$_Tree@PAVMxAtom@@PAV1@U_Kfn@?$set@PAVMxAtom@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@QAE?AViterator@1@XZ +// Note: could also be +// ?begin@?$_Tree@PAVMxAtom@@PAV1@U_Kfn@?$set@PAVMxAtom@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@UMxAtomCompare@@V?$allocator@PAVMxAtom@@@@@@QBE?AVconst_iterator@1@XZ // clang-format on // TEMPLATE: BETA10 0x101321d0 diff --git a/LEGO1/omni/include/mxparam.h b/LEGO1/omni/include/mxparam.h index 57df088e..75ab4eac 100644 --- a/LEGO1/omni/include/mxparam.h +++ b/LEGO1/omni/include/mxparam.h @@ -14,7 +14,7 @@ public: }; // SYNTHETIC: BETA10 0x10013710 -// MxParam::MxParam +// ??0MxParam@@QAE@XZ // SYNTHETIC: ISLE 0x401540 // SYNTHETIC: LEGO1 0x10010370 diff --git a/LEGO1/omni/include/mxpresenterlist.h b/LEGO1/omni/include/mxpresenterlist.h index f5f658ac..0e8bd316 100644 --- a/LEGO1/omni/include/mxpresenterlist.h +++ b/LEGO1/omni/include/mxpresenterlist.h @@ -107,6 +107,6 @@ public: // MxListCursor::MxListCursor // TEMPLATE: BETA10 0x100d9420 -// MxListCursor::Prev +// ?Prev@?$MxListCursor@PAVMxPresenter@@@@QAEEAAPAVMxPresenter@@@Z #endif // MXPRESENTERLIST_H diff --git a/LEGO1/omni/include/mxstreamer.h b/LEGO1/omni/include/mxstreamer.h index 208f3ce1..1b5a7082 100644 --- a/LEGO1/omni/include/mxstreamer.h +++ b/LEGO1/omni/include/mxstreamer.h @@ -134,7 +134,7 @@ private: // list >::end // TEMPLATE: BETA10 0x101461b0 -// list >::iterator::operator++ +// ??Eiterator@?$list@PAVMxStreamController@@V?$allocator@PAVMxStreamController@@@@@@QAE?AV01@H@Z // SYNTHETIC: LEGO1 0x100b9120 // SYNTHETIC: BETA10 0x101466e0 diff --git a/LEGO1/omni/src/video/flic.cpp b/LEGO1/omni/src/video/flic.cpp index c040b83f..afdebebc 100644 --- a/LEGO1/omni/src/video/flic.cpp +++ b/LEGO1/omni/src/video/flic.cpp @@ -364,10 +364,10 @@ void DecodeSS2(LPBITMAPINFOHEADER p_bitmapHeader, BYTE* p_pixelData, BYTE* p_dat // LINE: BETA10 0x1013e643 short xmax = xofs + width - 1; - // LINE: BETA10 0x1013e652 union { BYTE* byte; WORD* word; + // LINE: BETA10 0x1013e652 } data = {p_data}; // The first word in the data following the chunk header contains the number of lines in the chunk. diff --git a/LEGO1/viewmanager/viewlodlist.h b/LEGO1/viewmanager/viewlodlist.h index 60847caf..b7e0f9d3 100644 --- a/LEGO1/viewmanager/viewlodlist.h +++ b/LEGO1/viewmanager/viewlodlist.h @@ -127,8 +127,10 @@ private: // _Tree,map >::_Kfn,ROINameComparator,allocator >::~_Tree,map,map >::_Kfn,ROINameComparator,allocator >::erase +// ?erase@?$_Tree@PBDU?$pair@QBDPAVViewLODList@@@@U_Kfn@?$map@PBDPAVViewLODList@@UROINameComparator@@V?$allocator@PAVViewLODList@@@@@@UROINameComparator@@V?$allocator@PAVViewLODList@@@@@@QAE?AViterator@1@V21@0@Z // TEMPLATE: LEGO1 0x100a7db0 // TEMPLATE: BETA10 0x1017aca0 @@ -156,7 +158,7 @@ private: // map >::begin // TEMPLATE: BETA10 0x10179070 -// map >::end +// ?end@?$map@PBDPAVViewLODList@@UROINameComparator@@V?$allocator@PAVViewLODList@@@@@@QAE?AViterator@?$_Tree@PBDU?$pair@QBDPAVViewLODList@@@@U_Kfn@?$map@PBDPAVViewLODList@@UROINameComparator@@V?$allocator@PAVViewLODList@@@@@@UROINameComparator@@V?$allocator@ // TEMPLATE: BETA10 0x10179250 // pair::pair