code: func (st *state) functionType() AST {
  	st.checkChar('F')
  	if len(st.str) > 0 && st.str[0] == 'Y' {
  		// Function has C linkage.  We don't print this.
  		st.advance(1)
  	}
  	ret := st.bareFunctionType(true)
  	r := st.refQualifier()
  	if r != "" {
  		ret = &MethodWithQualifiers{Method: ret, Qualifiers: nil, RefQualifier: r}
  	}
  	if len(st.str) == 0 || st.str[0] != 'E' {
  		st.fail("expected E after function type")
  	}
  	st.advance(1)
  	return ret
  }
docs: // <function-type> ::= F [Y] <bare-function-type> [<ref-qualifier>] E