added a comment - - edited
Nov 24, 2013 update: Now that all of the patches mentioned in my earlier message below have been applied to master, the latest master compiles and passes all tests cleanly with JDK8 early access b116 (currently the latest version). However, the same unit test named compare-reflect-and-asm in reflect.clj consistently fails, throwing an exception during the call that uses the AsmReflector to get info for a class. All other tests pass.
There are no test failures with this patch for Mac+Apple JDK 1.6, or Linux with any of OpenJDK 1.6, Oracle 1.6 or 1.7, so it appears specific to this patch and JDK 1.8.
Original Oct 4, 2013 message:
This is probably more trouble to bring up than it is worth, but I will mention it anyway, since I've been trying out builds of Clojure with JDK8 early access versions. The behavior may be due to bugs in JDK8 for all I know – I have not tracked them down to their root cause.
The latest Clojure master as of Oct 4 2013 builds with warnings, and fails one unit test, with JDK8 early access b109. I think the unit test failure is fixed by patch clj-1246-fix-type-reflect-exception-patch-v1.txt on
CLJ-1246. The compilation warnings are fixed by patch clj-1264-1.txt on CLJ-1264.
If I apply those two patches, JDK8 b109 builds Clojure and passes tests fine, although it gives a warning that 1.5 is obsolete, and says it is ignoring that option.
If I apply those two patches, then clj-1268.patch on
CLJ-1268, JDK8 b109 builds Clojure and passes tests fine, and it eliminates the warning about 1.5. It still gives the warning "warning: [options] bootstrap class path not set in conjunction with -source 1.6", but earlier current Clojure master and JDK7 gives the same warning except with version 1.5, and that has never been a problem that I can tell.
If I apply those three patches, then asm41ws.patch, JDK8 b109 consistently fails to pass the tests, in particular on of the reflector tests.
Like I said, maybe this is a "wait and see" problem, but given the scope of the ASM patch, I wanted to give some advance warning of a possible future problem.