public class Reproducer {

    /** Public to ease code-generation. Not meant to be used out of the parent class. */
    public interface MyGenericConsumer<T> {
        void accept(T arg);
    }

    /** Public to ease code-generation. Not meant to be used out of the parent class. */
    public static class DefaultRunnableConsumer implements MyGenericConsumer<Runnable> {
        @Override
        public void accept(final Runnable runnable) {
            runnable.run();
        }
    }

    public static void main(String[] args) throws NoSuchMethodException {
        // Fails on synthetic method on Oracle 8 u471
        Reproducer.DefaultRunnableConsumer.class.getDeclaredMethod("accept", Object.class).getParameters();
    }
}