Generics problem when extending

I have a particle system class:

public class ParticleSystem<P extends Particle>{
    ...
}

I then try to extend this class with an internal ParticleImpl class:

public class BasicParticleSystem extends ParticleSystem<ParticleImpl>{ // <-- Error

    ...

    private class ParticleImpl extends Particle{
        ...
    }

}

However, the compiler complains that “ParticleImpl cannot be resolved to a type”. Eclipse proposes importing the class manually, but does not do anything when I choose that option.

EDIT:
I found a solution. Manually importing the inner class and changing the visibility makes it compile:

import blah.BasicParticleSystem.ParticleImpl;

public class BasicParticleSystem extends ParticleSystem<ParticleImpl>{

    ...

    class ParticleImpl extends Particle{

        ...

    }
}

It’s still weird as hell.