Some IReduce/IReduceInit implementors don't respect reduced

Description

Several reduce implementations don't properly respect reduced:

  • clojure.core.ArrayChunk's implementation of IChunk/reduce

  • VecSeq's impl of InternalReduce/reduce

  • APersistentVector's reduce with init doesn't unwrap reduced on last value

  • seqs of primitive arrays don't unwrap reduced on last value

  • PersistentList doesn't unwrap reduced on last value

Some examples:

Patch: 0001-ensure-IReduce-IReduceInit-implementors-respect-redu.patch
Screened by: Alex Miller
See also: http://dev.clojure.org/jira/browse/CLJ-1537

Environment

None

Assignee

Unassigned

Reporter

Nicola Mometto

Labels

None

Approval

Ok

Patch

Code and Test

Fix versions

Affects versions

Priority

Major
Configure