title: Parsing C declarations
body: <p>Can someone help me figure this declaration out?</p>
  
  <pre><code>int *x()(int)
  void (*signal(int, void (*fp)(int)))(int)
  </code></pre>
  
  <p>I can't seem to parse these using methods given <a href="https://eli.thegreenplace.net/2008/07/18/reading-c-type-declarations/" rel="nofollow noreferrer">here</a> . I know <strong>what</strong> this means using cdecl.org and also that the 1st one is illegal but I want to figure out <strong>how</strong> to parse these?</p>