I looked at ProGuard's code and the fix is a one-liner, at least a fix that works for me. The question is of course whether it's generally applicable. I can't fine a way to submit a patch, though... The fix prevents obfuscation of all super-interfaces of the interface that is returned from invokedynamic (as opposed to prevent obfuscation of just the returned interface). Here's the patch against the current ProGuard repo tip, but it should be easily applicable to all versions): --- a/src/proguard/classfile/visitor/DynamicReturnedClassVisitor.java...
Single-file example for a lambda-related problem