Emit warnings as Prolog comments

This commit is contained in:
bakaq
2023-12-30 17:39:20 -03:00
parent 781f4afe25
commit d9d90d1ae8
6 changed files with 11 additions and 11 deletions

View File

@@ -112,7 +112,7 @@ success_or_warning(Goal) :-
( call(Goal) -> ( call(Goal) ->
true true
; %% initialization goals can fail without thwarting the load. ; %% initialization goals can fail without thwarting the load.
write('Warning: initialization/1 failed for: '), write('% Warning: initialization/1 failed for: '),
writeq(Goal), writeq(Goal),
nl nl
). ).
@@ -188,7 +188,7 @@ warn_about_singletons([], _).
warn_about_singletons([Singleton|Singletons], LinesRead) :- warn_about_singletons([Singleton|Singletons], LinesRead) :-
( filter_anonymous_vars([Singleton|Singletons], VarEqs), ( filter_anonymous_vars([Singleton|Singletons], VarEqs),
VarEqs \== [] -> VarEqs \== [] ->
write('Warning: singleton variables '), write('% Warning: singleton variables '),
print_comma_separated_list(VarEqs), print_comma_separated_list(VarEqs),
write(' at line '), write(' at line '),
write(LinesRead), write(LinesRead),
@@ -286,7 +286,7 @@ module_expanded_head_variables(Head, HeadVars) :-
print_goal_expansion_warning(Pred) :- print_goal_expansion_warning(Pred) :-
nl, nl,
write('Warning: clause body goal expansion failed because '), write('% Warning: clause body goal expansion failed because '),
writeq(Pred), writeq(Pred),
write(' is not callable.'), write(' is not callable.'),
nl. nl.

View File

@@ -1208,7 +1208,7 @@ fn print_overwrite_warning(
} }
println!( println!(
"Warning: overwriting {}/{} because the clauses are discontiguous", "% Warning: overwriting {}/{} because the clauses are discontiguous",
key.0.as_str(), key.0.as_str(),
key.1 key.1
); );
@@ -2179,7 +2179,7 @@ impl<'a, LS: LoadState<'a>> Loader<'a, LS> {
if is_cross_module_clause && !local_predicate_info.is_extensible { if is_cross_module_clause && !local_predicate_info.is_extensible {
if predicate_info.is_multifile { if predicate_info.is_multifile {
println!( println!(
"Warning: overwriting multifile predicate {}:{}/{} because \ "% Warning: overwriting multifile predicate {}:{}/{} because \
it was not locally declared multifile.", it was not locally declared multifile.",
self.payload.predicates.compilation_target, self.payload.predicates.compilation_target,
key.0.as_str(), key.0.as_str(),

View File

@@ -1130,7 +1130,7 @@ impl Machine {
} }
Unknown::Warn => { Unknown::Warn => {
println!( println!(
"warning: predicate {}/{} is undefined", "% Warning: predicate {}/{} is undefined",
name.as_str(), name.as_str(),
arity arity
); );

View File

@@ -130,7 +130,7 @@ impl ReadlineStream {
if let Some(mut path) = dirs_next::home_dir() { if let Some(mut path) = dirs_next::home_dir() {
path.push(HISTORY_FILE); path.push(HISTORY_FILE);
if path.exists() && rl.load_history(&path).is_err() { if path.exists() && rl.load_history(&path).is_err() {
println!("Warning: loading history failed"); println!("% Warning: loading history failed");
} }
} }
@@ -213,10 +213,10 @@ impl ReadlineStream {
path.push(HISTORY_FILE); path.push(HISTORY_FILE);
if path.exists() { if path.exists() {
if self.rl.append_history(&path).is_err() { if self.rl.append_history(&path).is_err() {
println!("Warning: couldn't append history (existing file)"); println!("% Warning: couldn't append history (existing file)");
} }
} else if self.rl.save_history(&path).is_err() { } else if self.rl.save_history(&path).is_err() {
println!("Warning: couldn't save history (new file)"); println!("% Warning: couldn't save history (new file)");
} }
} }
} }

View File

@@ -134,7 +134,7 @@ run_goals([g(Gs0)|Goals]) :- !,
write_term(Exception, [double_quotes(DQ)]), nl % halt? write_term(Exception, [double_quotes(DQ)]), nl % halt?
) )
) -> true ) -> true
; write('Warning: initialization failed for: '), ; write('% Warning: initialization failed for: '),
write_term(Goal, [variable_names(VNs),double_quotes(DQ)]), nl write_term(Goal, [variable_names(VNs),double_quotes(DQ)]), nl
), ),
run_goals(Goals). run_goals(Goals).

View File

@@ -1,2 +1,2 @@
Warning: singleton variables X at line 4 of singleton_example.pl % Warning: singleton variables X at line 4 of singleton_example.pl
true. true.