Skip to content

Commit

Permalink
Line numbers start at 1
Browse files Browse the repository at this point in the history
Bumps the line number for the singleton warning. When the singleton
occurs on the same line at the term starts, the line number is correct:

    foo(X).

However it stills mis-reports this line number as 1 instead of 5:

    foo(1) :-
        true,
        true,
        true,
        Y.

See issue #1356.
  • Loading branch information
dnmfarrell committed Feb 2, 2025
1 parent c548b14 commit f509d3d
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 6 deletions.
3 changes: 2 additions & 1 deletion src/loader.pl
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,8 @@
'$conclude_load'(Evacuable)
; var(Term) ->
instantiation_error(load/1)
; warn_about_singletons(Singletons, LinesRead),
; LineNum is LinesRead + 1,
warn_about_singletons(Singletons, LineNum),
compile_term(Term, Evacuable),
load_loop(Stream, Evacuable)
).
Expand Down
8 changes: 4 additions & 4 deletions tests/scryer/cli/src_tests/directive_errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,14 +42,14 @@ $ scryer-prolog -f --no-add-history tests-pl/invalid_decl7.pl -g halt

```trycmd
$ scryer-prolog -f --no-add-history tests-pl/invalid_decl8.pl -g halt
% Warning: singleton variables Var at line 0 of invalid_decl8.pl
% Warning: singleton variables Var at line 1 of invalid_decl8.pl
error(domain_error(operator_specifier,todo_insert_invalid_term_here),load/1).
```

```trycmd
$ scryer-prolog -f --no-add-history tests-pl/invalid_decl9.pl -g halt
% Warning: singleton variables Var at line 0 of invalid_decl9.pl
% Warning: singleton variables Var at line 1 of invalid_decl9.pl
error(type_error(integer,todo_insert_invalid_term_here),load/1).
```
Expand All @@ -63,7 +63,7 @@ FIXME I belive the following test should result in a `error(instantiation_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
% Warning: singleton variables Var at line 1 of invalid_decl11.pl
error(type_error(list,todo_insert_invalid_term_here),load/1).
```
Expand Down Expand Up @@ -101,7 +101,7 @@ $ scryer-prolog -f --no-add-history tests-pl/invalid_decl16.pl -g halt

```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
% Warning: singleton variables D at line 1 of invalid_decl_issue2467.pl
error(instantiation_error,load/1).
```
1 change: 0 additions & 1 deletion tests/scryer/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ fn cli_tests() {
trycmd::TestCases::new()
.default_bin_name("scryer-prolog")
.case("tests/scryer/cli/issues/*.toml")
.skip("tests/scryer/cli/issues/singleton_warning.toml") // wrong line number
.case("tests/scryer/cli/src_tests/*.toml")
.case("tests/scryer/cli/src_tests/*.md");
}

0 comments on commit f509d3d

Please sign in to comment.