Referencia de método llama método incorrecto

Estoy escribiendo una aplicación de Android y uso net.sourceforge.streamsupport:streamsupport:1.5.5 Estoy usando Android Studio 2.3.3 con el JDK incorporado, la compatibilidad de origen y destino están establecidos en 1.8.

Ahora tengo una referencia de método Light::getColor que, cuando se llama, llama al método incorrecto ( Light::getColorTemperature ).

 return StreamSupport.stream(lights) .filter(light -> light.getColorMode().ordinal() >= ColorMode.HUE_SATURATION.ordinal() .findFirst() .map(Light::getColor) .orElse(Color.WHITE); 

Como se ve al depurar: Depurador muestra llamada de método incorrecto

Si utilizo una expresión lambda ( light -> light.getColor() ), se llama al método correcto:

 return StreamSupport.stream(lights) .filter(light -> light.getColorMode().ordinal() >= ColorMode.HUE_SATURATION.ordinal() .findFirst() .map(light -> light.getColor()) .orElse(Color.WHITE); 

Como se ve al depurar: Depurador muestra la llamada al método correcto

Recompilar todo el proyecto no cambió nada. ¿Alguien ha visto esto? No estoy seguro de si se trata de un problema de streamsupport o un problema de compilador de Android, y cómo averiguarlo.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.