Nikolay Sivov (@nsivov) commented about dlls/user32/tests/class.c:
+}; + +static const struct real_class_test class_tests[] = { + { L"Button", "Button", L"Button", "Button", TRUE, TRUE }, + { L"ComboBox", "ComboBox", L"ComboBox", "ComboBox", TRUE, TRUE }, + { L"Edit", "Edit", L"Edit", "Edit", TRUE, TRUE }, + { L"ListBox", "ListBox", L"ListBox", "ListBox", TRUE, TRUE }, + { L"ScrollBar", "ScrollBar", L"ScrollBar", "ScrollBar", TRUE, TRUE }, + { L"Static", "Static", L"Static", "Static", TRUE, TRUE }, + { L"ComboLBox", "ComboLBox", L"ListBox", "ListBox", TRUE, TRUE }, + { L"MDIClient", "MDIClient", L"MDIClient", "MDIClient", TRUE, TRUE }, + { L"#32768", "#32768", L"#32768", "#32768", TRUE, TRUE }, + { L"#32770", "#32770", L"#32770", "#32770", TRUE, TRUE }, + /* Not all built-in classes set real window class. */ + { L"Message", "Message", SUPER_CLASS_NAME_W, SUPER_CLASS_NAME_A, FALSE, FALSE }, +}; Why do you need to duplicate all of that? E.g. what's a reason to expect W-name being different from A-name?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/4092#note_48669