di/instanceManager ignores call time parameters of array

relative #4714

InstanceManager::sharedInstancesWithParams with Hash based management ignores entries of array.This causes #4717.

Thanks.
I'm anxious about it too.

But,
In the current HEAD, We get the shared instance even if it has the wrong parameters though the caller specified the params to get the special instance. (for example #4714)

In this patch, calling it with parameters, he get the shared instance having the same parameters or new instance.
On the other hand, We cannot get the shared instance calling with not matched parameters when the instanceManager has the instance without parameters. 
Indeed, it changes behavior.
But I can't see what is broken by this. Who does call $di->get with parameters to get the shared instance not having parameters? If it is important as untouchable, we will lost getSharedInstanceWithPrameters's benefit and  #4714 as documented feature.
Is it BC break or bug ? 

Can you show me the test case you intended?