]> Repositorios git - scryer-prolog.git/commitdiff
Fix bug where -t argument was processed as filename
authorJ.J. Tolton <[email protected]>
Fri, 7 Nov 2025 00:39:21 +0000 (19:39 -0500)
committerJ.J. Tolton <[email protected]>
Sun, 9 Nov 2025 17:44:48 +0000 (12:44 -0500)
Fixed issue where `scryer-prolog -t halt` would try to load "halt.pl"
as a file instead of just using halt as the custom toplevel.

The bug was caused by an extra clause `delegate_task([], []).` that
would return control to the calling context instead of continuing to
start_toplevel. This caused the argument processing in delegate_task
to continue and treat the already-consumed toplevel argument as a
filename.

Removing this clause ensures that delegate_task([], Goals0) always
proceeds to load initialization files and start the toplevel, fixing
the double-processing bug.

Co-Authored-By: J.J.'s Robot <[email protected]>
src/toplevel.pl

index 18f5c799fbfa5688248776d47687ca0846374390..281c2364bbfb3dd06195a243ca71771b8ecc95a5 100644 (file)
@@ -71,7 +71,6 @@ arg_consults_goals(c(Mod), Args, [c(Mod)|Consults], Goals) :-
 arg_consults_goals(g(Goal), Args, Consults, [g(Goal)|Goals]) :-
     args_consults_goals(Args, Consults, Goals).
 
-delegate_task([], []).
 delegate_task([], Goals0) :-
     (\+ disabled_init_file -> load_scryerrc ; true),
     reverse(Goals0, Goals1),