Search code examples
javacode-coveragegradleclover

Clover 3.1.7 does not support java 7 diamond


My Clover instrumentation fails with the error:

>  /path/to/MyClass.java:138:28:unexpected token: >

On the line:

return new HashSet<>();

This is despite executing clover instrumentation with the source level explicitly set to 1.7:

ant."clover-instr"(srcdir:it, destdir:cloverConvention.instrSrcDir, source:"1.7")

( ^ gradle )

Actually, I can set that property to whatever I like. It makes no difference:

ant."clover-instr"(srcdir:it, destdir:cloverConvention.instrSrcDir, source:"one billion")

But it is a valid attribute, because if I put something else in it will fail differently.

ant."clover-instr"(srcdir:it, destdir:cloverConvention.instrSrcDir, sores:"1.7")
> clover-instr doesn't support the "sores" attribute

Do I need to do anything else to get the 1.7 source recognised? Using Clover 3.1.7


Solution

  • This is a regression bug. Clover v3.1.5 works OK.