Of all the confusing parts of Ghidra, I'd like to ask about the "code" keyword. A similar question was asked here. However, I am not asking what the keyword is, but how to interpret/define this keyword.
In that post, it is said that this is a function pointer. And, from what I can tell in the example Ghidra gave below, that would make some sense (still trying to wrap my head around it). But how can I define "code" so that gcc will recognize it and have it work properly? Is there a general solution to this or must I decide case-by-case what to do? In another Ghidra project I'm figuring out, there are numerous examples of "code" appearing. I'm assuming I can't just replace it with any old data type? Unless...?
void FUN_00101020(void)
{
// WARNING: Treating indirect jump as call
(*(code *)(undefined *)0x0)();
return;
}