d: Fix ICE using non-local variable: internal compiler error: Segmentation fault
Moves no frame access error to own function, adding use of it for both
when get_framedecl() cannot find a path to the outer function frame, and
guarding get_decl_tree() from recursively calling itself.
gcc/d/ChangeLog:
	PR d/96254
	* d-codegen.cc (error_no_frame_access): New.
	(get_frame_for_symbol): Use fdparent name in error message.
	(get_framedecl): Replace call to assert with error.
	* d-tree.h (error_no_frame_access): Declare.
	* decl.cc (get_decl_tree): Detect recursion and error.
gcc/testsuite/ChangeLog:
	PR d/96254
	* gdc.dg/pr96254a.d: New test.
	* gdc.dg/pr96254b.d: New test.