Merge pull request #2495 from Skgland/fix2467

fix looping from issue #2467
This commit is contained in:
Mark Thom
2024-08-17 20:56:23 -06:00
committed by GitHub
3 changed files with 19 additions and 7 deletions

View File

@@ -168,7 +168,9 @@ repl :-
%% Enable op declarations with lists of operands, i.e.,
%% :- op(900, fy, [$,@]).
user:term_expansion((:- op(Pred, Spec, [Op | OtherOps])), OpResults) :-
user:term_expansion((:- op(Pred, Spec, Ops)), OpResults) :-
ground(Ops),
Ops = [Op | OtherOps],
expand_op_list([Op | OtherOps], Pred, Spec, OpResults).
expand_op_list([], _, _, []).

View File

@@ -0,0 +1 @@
:- D.

View File

@@ -59,13 +59,14 @@ $ scryer-prolog -f --no-add-history tests-pl/invalid_decl10.pl -g halt
```
The following test doesn't appear to terminate so its moved to a block quote for now
FIXME I belive the following test should result in a `error(instantiation_error,load/1)` error instead of the current error.
> ```trycmd
> $ scryer-prolog -f --no-add-history tests-pl/invalid_decl11.pl -g halt
> % Warning: singleton variables Var at line 0 of invalid_decl11.pl
> error(instantiation_error,load/1).
> ```
```trycmd
$ scryer-prolog -f --no-add-history tests-pl/invalid_decl11.pl -g halt
% Warning: singleton variables Var at line 0 of invalid_decl11.pl
error(type_error(list,todo_insert_invalid_term_here),load/1).
```
```trycmd
$ scryer-prolog -f --no-add-history tests-pl/invalid_decl12.pl -g halt
@@ -96,3 +97,11 @@ $ scryer-prolog -f --no-add-history tests-pl/invalid_decl16.pl -g halt
error(permission_error(modify,operator,','),load/1).
```
```trycmd
$ scryer-prolog -f --no-add-history tests-pl/invalid_decl_issue2467.pl -g halt
% Warning: singleton variables D at line 0 of invalid_decl_issue2467.pl
error(instantiation_error,load/1).
```