Update to commit e2647ad952b4d7afc9a186429c181efbc4958786
[inform.git] / src / verbs.c
index 9e83057c91bd53da82108715f1845532e400f684..8b7e64974ac004b16ced8277312eba82a3100991 100644 (file)
@@ -2,9 +2,8 @@
 /*   "verbs" :  Manages actions and grammar tables; parses the directives    */
 /*              Verb and Extend.                                             */
 /*                                                                           */
-/* Copyright (c) Graham Nelson 1993 - 2020                                   */
-/*                                                                           */
-/* This file is part of Inform.                                              */
+/*   Part of Inform 6.35                                                     */
+/*   copyright (c) Graham Nelson 1993 - 2020                                 */
 /*                                                                           */
 /* Inform is free software: you can redistribute it and/or modify            */
 /* it under the terms of the GNU General Public License as published by      */
@@ -146,13 +145,15 @@ extern void make_fake_action(void)
         ebf_error("new fake action name", token_text);
         panic_mode_error_recovery(); return;
     }
+    /* Action symbols (including fake_actions) may collide with other kinds of symbols. So we don't check that. */
 
     snprintf(action_sub, MAX_IDENTIFIER_LENGTH+4, "%s__A", token_text);
     i = symbol_index(action_sub, -1);
 
     if (!(sflags[i] & UNKNOWN_SFLAG))
     {   discard_token_location(beginning_debug_location);
-        ebf_error("new fake action name", token_text);
+        /* The user didn't know they were defining FOO__A, but they were and it's a problem. */
+        ebf_symbol_error("new fake action name", action_sub, typename(stypes[i]), slines[i]);
         panic_mode_error_recovery(); return;
     }