samtools/htsjdk — pull request #90 by bpow (2014-08-30 02:31:42+00:00)
Title: Jdk8 ternary

Two commits related to jdk8 compatibility.

1. cofoja (at least the version in the `lib/` directory) is not compatible with jdk8. Setting `-proc:none` as the default for all compilation (as it is currently used in compiling 'variant' classes) keeps the cofoja processor from being called. There are no cofoja annotations outside of 'variant' anyway, so this may speed up compilation anyway.
2. There was a change to the JLS with jdk8 in the way that generic LUB type inference is performed for poly expressions, which includes ternary expressions, which can lead to an error message like "error: incompatible types: inferred type does not conform to equality constraint(s)". There is some background in [a question on StackOverflow](http://stackoverflow.com/questions/22509488/generics-compilation-error-with-ternary-operator-in-java-8-but-not-in-java-7). Casting even one of the branches of the ternary expression allows compilation to proceed.

Note that these commits apply cleanly and allow all tests to pass in jdk6 and 7 still. SAMFileHeaderMergerTest fails in jdk8 even when these commits allow for compilation. That is because the test is broken (see pull request #89 )