Похоже, что вы присваиваете массиву не указатель.
Из выходного сообщения об ошибке:
'void (*[])(struct Pro_Window *)' from type 'void *'|
Обратите внимание на []
там (и это, конечно, не 'лямбда!), а не *
Если это "расширяемая" структура, вам нужно перераспределить всю структуру, а не только член массива.
Кстати, совет: еслиСбой realloc возвращает указатель NULL, и если вы присваиваете его переменной, на которую ссылается realloc, исходная память, на которую он указывал, будет потеряна навсегда.Поэтому всегда сначала перераспределяйте в temp, проверяйте значение и затем присваивайте исходный указатель, если он работал.