PersistentList/creator doesn't handle ArraySeqs correctly

Description

This should return '(2 3) but returns '(1 2 3) instead:

Note that using vector rather than list returns the correct values:

The bug was reported in this stackoverflow question: https://stackoverflow.com/questions/27819418/strange-behaviour-of-clojure-trampoline and the bug identified in this comment: https://stackoverflow.com/questions/27819418/strange-behaviour-of-clojure-trampoline#comments-27821793

A simpler example of this bug:

Patch: CLJ-1633-v3.patch

Environment

None

Assignee

Unassigned

Reporter

Nicola Mometto

Labels

Approval

Ok

Patch

Code and Test

Fix versions

Priority

Critical
Configure