patch 8.2.0056: execution stack is incomplete and inefficient

Problem:    Execution stack is incomplete and inefficient.
Solution:   Introduce a proper execution stack and use it instead of
            sourcing_name/sourcing_lnum.  Create a string only when used.
diff --git a/src/term.c b/src/term.c
index b0ab7c6..389b06f 100644
--- a/src/term.c
+++ b/src/term.c
@@ -2277,7 +2277,7 @@
     }
 #endif
 
-    if (sourcing_name == NULL)
+    if (SOURCING_NAME == NULL)
     {
 #ifdef HAVE_TGETENT
 	if (error_msg != NULL)