From 14646074bea92c5c2d51c1961e27ecbc7b29fe20 Mon Sep 17 00:00:00 2001 From: Mark Date: Tue, 18 Jul 2023 14:44:02 -0600 Subject: [PATCH] remove failing append choicepoint in atom_concat/3 special case (#1893) --- src/lib/builtins.pl | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/lib/builtins.pl b/src/lib/builtins.pl index 7f19d148..983503cb 100644 --- a/src/lib/builtins.pl +++ b/src/lib/builtins.pl @@ -1559,9 +1559,14 @@ atom_concat(Atom_1, Atom_2, Atom_12) :- ( var(Atom_12) -> throw(error(instantiation_error, atom_concat/3)) ; atom_chars(Atom_12, Atom_12_Chars), - lists:append(BeforeChars, AfterChars, Atom_12_Chars), - atom_chars(Atom_1, BeforeChars), - atom_chars(Atom_2, AfterChars) + ( var(Atom_2) -> + lists:append(BeforeChars, AfterChars, Atom_12_Chars), + atom_chars(Atom_2, AfterChars) + ; atom_chars(Atom_2, AfterChars), + lists:append(BeforeChars, AfterChars, Atom_12_Chars), + ! + ), + atom_chars(Atom_1, BeforeChars) ) ; var(Atom_2) -> ( var(Atom_12) -> throw(error(instantiation_error, atom_concat/3)) -- 2.54.0