<!-- 
RSS generated by JIRA (4.4#649-r158309) at Sun May 26 00:19:00 CDT 2013

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
For example:
http://dev.clojure.org/jira/si/jira.issueviews:issue-xml/CLJS-464/CLJS-464.xml?field=key&field=summary
-->
<rss version="0.92" >
<channel>
    <title>Clojure JIRA</title>
    <link>http://dev.clojure.org/jira</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>4.4</version>
        <build-number>649</build-number>
        <build-date>25-07-2011</build-date>
    </build-info>

<item>
            <title>[CLJS-464] `get-in` not behaving like Clojure when accessing non-existing inner maps</title>
                <link>http://dev.clojure.org/jira/browse/CLJS-464</link>
                <project id="10040" key="CLJS">ClojureScript</project>
                        <description>&lt;p&gt;In Clojurescript:&lt;br/&gt;
(get-in {:a {:b 1}} &lt;span class=&quot;error&quot;&gt;&amp;#91;:a :b :c&amp;#93;&lt;/span&gt;)&lt;br/&gt;
=&amp;gt; Error: 1 is not an instance of ILookup&lt;/p&gt;

&lt;p&gt;In Clojure:&lt;br/&gt;
(get-in {:a {:b 1}} &lt;span class=&quot;error&quot;&gt;&amp;#91;:a :b :c&amp;#93;&lt;/span&gt;)&lt;br/&gt;
=&amp;gt; nil&lt;/p&gt;</description>
                <environment>Gentoo 64, oracle-jvm</environment>
            <key id="15979">CLJS-464</key>
            <summary>`get-in` not behaving like Clojure when accessing non-existing inner maps</summary>
                <type id="1" iconUrl="http://dev.clojure.org/jira/images/icons/bug.gif">Defect</type>
                                <priority id="3" iconUrl="http://dev.clojure.org/jira/images/icons/priority_major.gif">Major</priority>
                    <status id="5" iconUrl="http://dev.clojure.org/jira/images/icons/status_resolved.gif">Resolved</status>
                    <resolution id="1">Completed</resolution>
                                <assignee username="-1">Unassigned</assignee>
                                <reporter username="roman">Roman Gonzalez</reporter>
                        <labels>
                        <label>bug</label>
                    </labels>
                <created>Sat, 26 Jan 2013 22:58:15 -0600</created>
                <updated>Mon, 28 Jan 2013 22:39:13 -0600</updated>
                    <resolved>Mon, 28 Jan 2013 22:39:13 -0600</resolved>
                                                                    <due></due>
                    <votes>0</votes>
                        <watches>1</watches>
                        <comments>
                    <comment id="30493" author="roman" created="Sat, 26 Jan 2013 23:01:28 -0600"  >&lt;p&gt;Code and Test patch v1&lt;/p&gt;</comment>
                    <comment id="30495" author="dnolen" created="Sun, 27 Jan 2013 17:25:09 -0600"  >&lt;p&gt;Isn&apos;t this a duplicate of &lt;a href=&quot;http://dev.clojure.org/jira/browse/CLJS-458&quot; title=&quot;get-in throws exception when key-list contains key that doesn&amp;#39;t satisfy ILookup&quot;&gt;&lt;del&gt;CLJS-458&lt;/del&gt;&lt;/a&gt;? That&apos;s been fixed in master.&lt;/p&gt;</comment>
                    <comment id="30502" author="roman" created="Mon, 28 Jan 2013 22:06:11 -0600"  >&lt;p&gt;Hey David, &lt;/p&gt;

&lt;p&gt;Thanks for your prompt reply, I tested latest version of github&apos;s master with the test-case I added and got this error.&lt;/p&gt;

&lt;p&gt;```shell&lt;br/&gt;
Testing with V8                                                                                                                                                                  &lt;br/&gt;
out/core-advanced-test.js:1: Error: No protocol method ILookup.-lookup defined for type number: 2                                                                                &lt;br/&gt;
function d(a){throw a;}var e=void 0,f=!0,g=null,h=!1;function aa(){return func                                                                                                   &lt;br/&gt;
                    ^                                                                                                                                                            &lt;br/&gt;
Error: No protocol method ILookup.-lookup defined for type number: 2                                                                                                             &lt;br/&gt;
    at Error (&amp;lt;anonymous&amp;gt;)                                                                                                                                                       &lt;br/&gt;
    at t (out/core-advanced-test.js:5:962)                                                                                                                                       &lt;br/&gt;
    at Function.ab &lt;span class=&quot;error&quot;&gt;&amp;#91;as c&amp;#93;&lt;/span&gt; (out/core-advanced-test.js:11:239)                                                                                                                     &lt;br/&gt;
    at Function.wd &lt;span class=&quot;error&quot;&gt;&amp;#91;as c&amp;#93;&lt;/span&gt; (out/core-advanced-test.js:49:60)                                                                                                                      &lt;br/&gt;
    at Function.Dc &lt;span class=&quot;error&quot;&gt;&amp;#91;as h&amp;#93;&lt;/span&gt; (out/core-advanced-test.js:36:58)                                                                                                                      &lt;br/&gt;
    at Nk.l.Da (out/core-advanced-test.js:176:128)                                                                                                                               &lt;br/&gt;
    at Function.Bb &lt;span class=&quot;error&quot;&gt;&amp;#91;as h&amp;#93;&lt;/span&gt; (out/core-advanced-test.js:16:342)                                                                                                                     &lt;br/&gt;
    at Function.Ye &lt;span class=&quot;error&quot;&gt;&amp;#91;as h&amp;#93;&lt;/span&gt; (out/core-advanced-test.js:65:210)                                                                                                                     &lt;br/&gt;
    at Function.Lj &lt;span class=&quot;error&quot;&gt;&amp;#91;as c&amp;#93;&lt;/span&gt; (out/core-advanced-test.js:164:27)                                                                                                                     &lt;br/&gt;
    at Eu (out/core-advanced-test.js:602:398)                                                                                                                                    &lt;/p&gt;

&lt;p&gt;SPIDERMONKEY_HOME not set, skipping SpiderMonkey tests                                                                                                                           &lt;br/&gt;
JSC_HOME not set, skipping JavaScriptCore tests                                                                                                                                  &lt;br/&gt;
Tested with 1 out of 3 possible js targets&lt;br/&gt;
```&lt;/p&gt;

&lt;p&gt;The test case is:&lt;/p&gt;

&lt;p&gt;```gitdiff&lt;br/&gt;
diff --git a/test/cljs/cljs/core_test.cljs b/test/cljs/cljs/core_test.cljs                                                                                                       &lt;br/&gt;
index 2d1d2f3..bf3f7bb 100644                                                                                                                                                    &lt;br/&gt;
&amp;#8212; a/test/cljs/cljs/core_test.cljs                                                                                                                                              &lt;br/&gt;
+++ b/test/cljs/cljs/core_test.cljs                                                                                                                                              &lt;br/&gt;
@@ -656,6 +656,7 @@                                                                                                                                                              &lt;br/&gt;
   (assert (= 1 (get-in &lt;span class=&quot;error&quot;&gt;&amp;#91;{:foo 1}, {:foo 2}&amp;#93;&lt;/span&gt; &lt;span class=&quot;error&quot;&gt;&amp;#91;0 :foo&amp;#93;&lt;/span&gt;)))                                                                                                                         &lt;br/&gt;
   (assert (= 4 (get-in [{:foo 1 :bar &lt;span class=&quot;error&quot;&gt;&amp;#91;{:baz 1}, {:buzz 2}&amp;#93;&lt;/span&gt;}, {:foo 3 :bar &lt;span class=&quot;error&quot;&gt;&amp;#91;{:baz 3}, {:buzz 4}&amp;#93;&lt;/span&gt;}]                                                                               &lt;br/&gt;
                        &lt;span class=&quot;error&quot;&gt;&amp;#91;1 :bar 1 :buzz&amp;#93;&lt;/span&gt;)))                                                                                                                                      &lt;br/&gt;
+  (assert (nil? (get-in {:foo {:bar 2}} &lt;span class=&quot;error&quot;&gt;&amp;#91;:foo :bar :baz&amp;#93;&lt;/span&gt;)))                                                                                                                     &lt;/p&gt;

&lt;p&gt;   ;; arrays                                                                                                                                                                     &lt;br/&gt;
   (let [a (to-array &lt;span class=&quot;error&quot;&gt;&amp;#91;1 2 3&amp;#93;&lt;/span&gt;)] &lt;br/&gt;
```&lt;/p&gt;

&lt;p&gt;In case github&apos;s master is not the latest one, and test works on master, please discard this message.&lt;/p&gt;

&lt;p&gt;Cheers.&lt;/p&gt;</comment>
                    <comment id="30503" author="dnolen" created="Mon, 28 Jan 2013 22:39:13 -0600"  >&lt;p&gt;fixed, &lt;a href=&quot;http://github.com/clojure/clojurescript/commit/2b21e9d5b09cdd09f2831d11810fa2c5ae4f14b1&quot;&gt;http://github.com/clojure/clojurescript/commit/2b21e9d5b09cdd09f2831d11810fa2c5ae4f14b1&lt;/a&gt;&lt;/p&gt;</comment>
                </comments>
                    <attachments>
                    <attachment id="11823" name="get-in-fix.patch" size="1299" author="roman" created="Sat, 26 Jan 2013 23:01:28 -0600" />
                </attachments>
            <subtasks>
        </subtasks>
                <customfields>
                                                                                            <customfield id="customfield_10010" key="com.pyxis.greenhopper.jira:gh-global-rank">
                <customfieldname>Global Rank</customfieldname>
                <customfieldvalues>
                    
                </customfieldvalues>
            </customfield>
                                                                                                            </customfields>
    </item>
</channel>
</rss>