Menu

#2840 850d0b breaks the build with --disable-plugins

None
closed-fixed
nobody
None
2025-12-01
2025-12-01
PuQ
No

Version: 6.1 [6e3291]

Reproduction:

./configure --disable-plugins --without-readline --disable-history-file --without-x --disable-x11-mbfonts --disable-x11-external --disable-wxwidgets --with-qt=no --without-libcerf --without-lua --without-gd --without-tektronix --without-cairo --without-latex --without-bitmap-terminals --disable-stats
make gnuplot

Observed:

command.c: In function define:
command.c:736:54: error: CALLE undeclared (first use in this function); did you mean CALLN?
  736 |         if (udf->at && (udf->at->actions[0].index == CALLE))
      |                                                      ^~~~~
      |                                                      CALLN
command.c:736:54: note: each undeclared identifier is reported only once for each function it appears in
command.c:737:13: error: implicit declaration of function external_free [-Wimplicit-function-declaration]
  737 |             external_free(udf->at);
      |             ^~~~~~~~~~~~~

Patch:

--- a/src/command.c
+++ b/src/command.c
@@ -732,9 +732,11 @@
        if (END_OF_COMMAND)
            int_error(c_token, "function definition expected");
        udf = add_udf(start_token);
+#ifdef HAVE_EXTERNAL_FUNCTIONS
        /* check for redefinition of a function imported as a plugin */
        if (udf->at && (udf->at->actions[0].index == CALLE))
            external_free(udf->at);
+#endif
        /* odd corner case of attempt to redefine a function while executing it */
        if (udf->at && udf->at->recursion_depth > 0)
            int_error(NO_CARET, "attempt to redefine %s while executing it", udf->udf_name);

Related

Commit: [6e3291]

Discussion

  • Ethan Merritt

    Ethan Merritt - 2025-12-01
    • status: open --> closed-fixed
    • Group: -->
    • Priority: -->
     
  • Ethan Merritt

    Ethan Merritt - 2025-12-01

    good catch.
    Thanks

     

Log in to post a comment.