<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to 9: Multiple returns error</title><link href="https://sourceforge.net/p/prodevtools/bugs/9/" rel="alternate"/><link href="https://sourceforge.net/p/prodevtools/bugs/9/feed.atom" rel="self"/><id>https://sourceforge.net/p/prodevtools/bugs/9/</id><updated>2012-02-14T16:50:47Z</updated><subtitle>Recent changes to 9: Multiple returns error</subtitle><entry><title>Multiple returns error</title><link href="https://sourceforge.net/p/prodevtools/bugs/9/" rel="alternate"/><published>2012-02-14T16:50:47Z</published><updated>2012-02-14T16:50:47Z</updated><author><name>Anonymous</name><uri>https://sourceforge.net/u/userid-None/</uri></author><id>https://sourceforge.net17d73a0337f52bcdd6ad3571b9307cf8012d2322</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;When running a simple call like member(1,[1,2,3]) the SWI Interpreter will run through the list [1,2,3] and after having found 1, it will keep looking until the end of the list, hence it will return true, false. It seems like after returning true, the second value false is only being shown if you write ; after, but you do have the option of writing something else instead, which can cause an error&lt;/p&gt;
&lt;p&gt;Here is an example of a console sequence that will make it break:&lt;br /&gt;
:-member(1,[1,2,3]).&lt;br /&gt;
true&lt;br /&gt;
:-;&lt;br /&gt;
false.&lt;br /&gt;
|member(1,[1,2,3]).&lt;br /&gt;
true&lt;br /&gt;
:-member(1,[1,2,3]).&lt;br /&gt;
Unknown action: m (h for help)&lt;br /&gt;
Action?&lt;br /&gt;
:-&lt;/p&gt;
&lt;p&gt;Cheers&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>