https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125252
--- Comment #8 from uecker at gcc dot gnu.org ---
This fixes the test case.
diff --git a/gcc/c/c-typeck.cc b/gcc/c/c-typeck.cc
index 6195d179543..7b790ac4c31 100644
--- a/gcc/c/c-typeck.cc
+++ b/gcc/c/c-typeck.cc
@@ -587,7 +587,7 @@ ptr_to_tagged_member (tree field)
tree type = TREE_TYPE (field);
bool ptr_seen = false;
while (TREE_CODE (type) == ARRAY_TYPE
- || TREE_CODE (type) == FUNCTION_TYPE
+// || TREE_CODE (type) == FUNCTION_TYPE
|| TREE_CODE (type) == POINTER_TYPE)
{
if (TREE_CODE (type) == POINTER_TYPE)