cobol: Accept FD name as CALL parameter.

A nonstandard extension CALL may pass an FD.  On the mainframe the
called cannot be a COBOL program and the passed parameter is the
file's DCB.  With this patch the parser is accepts an FD name as a
CALL parameter and interprets it, for now, as a buffer name, with a
warning.  Without -dialect ibm it is an error [Wcall-fd]. Further
development is needed to emulate mainframe semantics.  Begins to
address RT 3619.

Also introduce __funcsig__ as a debugging convenience to print the
full name of __PRETTY_FUNCTION__ without type and parameters.

gcc/cobol/ChangeLog:

	* cbldiag.h (enum cbl_diag_id_t): Add IbmCallFd.
	* cobol1.cc (cobol_langhook_handle_option): Handle Wcall-fd.
	* gcobol.1: Document Wcall-fd.
	* lang-specs.h: Add Wcall-fd.
	* lang.opt: Same
	* messages.cc: Add Wcall-fd as IBM dialect option.
	* parse.y: Use was_fd_name() to prevent misuse.
	* parse_ante.h (field_find): Add incompatible semantics warning.
	(parser_move_carefully): Same.
	* symbols.cc (symbols_update): Add FD name to symbol map.
	* symbols.h (update_symbol_map2): Declare overload for file.
	(was_fd_name): Declare function.
	* symfind.cc (struct funcname): Define to minimize __PRETTY_FUNCTION__.
	(__funcsig__): Define function-name macro.
	(class sym_name_t): Redefine public members as const.
	(class symbol_file_names_t) Define maps for FD names.
	(update_symbol_map2): Define overload for file.
	(was_fd_name): Define.
	(symbol_find): Use new symbol_file_names class.
11 files changed