OnEnable is never called for my script

I have two script on same object for one OnEnable is called but for other. I have tried this on primitive Cube with same result.
For OnOverReaction onEnable is not called.

using UnityEngine;
using VRStandardAssets.Utils;
namespace VRStandardAssets.Examples
{
	// This script shows a simple example of how
	// swipe controls can be handled.
	public class OnOverReaction : MonoBehaviour
	{
		[SerializeField] private VRInteractiveItem m_Item;                                 
		private void OnEnable()
		{
			m_Item.OnOver += HandleSwipe;
		}
		private void OnDisable()
		{
			m_Item.OnOver -= HandleSwipe;
		}
		private void HandleSwipe()
		{	
		}
	}
}

For UITint onEnable is called

using UnityEngine;
using UnityEngine.UI;

namespace VRStandardAssets.Utils
{
    public class UITint : MonoBehaviour
    {
        [SerializeField] private Color m_Tint;                                  // The colour to tint the Images.
        [Range (0f, 1f)] [SerializeField] private float m_TintPercent = 0.5f;   // How much the colour should be used.
        [SerializeField] private Image[] m_ImagesToTint;                        // References to the images which will be tinted.
        [SerializeField] private VRInteractiveItem m_InteractiveItem;           // Reference to the VRInteractiveItem which must be looked at to tint the images.

        private void OnEnable ()
        {
            m_InteractiveItem.OnOver += HandleOver;
            m_InteractiveItem.OnOut += HandleOut;
        }
        private void OnDisable ()
        {
            m_InteractiveItem.OnOver -= HandleOver;
            m_InteractiveItem.OnOut -= HandleOut;
        }
        private void HandleOver ()
        {
            // When the user looks at the VRInteractiveItem go through all the images...
            for (int i = 0; i < m_ImagesToTint.Length; i++)
            {
                // and ADD to their colour by an amount based on the tint percentage.  Note this will push the colour closer to white.
                m_ImagesToTint<em>.color += m_Tint * m_TintPercent;</em>

}
}
private void HandleOut ()
{
// When the user looks away from the VRInteractiveItem go through all the images…
for (int i = 0; i < m_ImagesToTint.Length; i++)
{
// …and subtract the same amount.
m_ImagesToTint.color -= m_Tint * m_TintPercent;
}
}
}
}
What am I doing wrong here?

If you’re not getting null reference exceptions on that one line in OnEnable, I don’t see anything wrong here so far.

First, I’d verify with something really simple like a single Debug.Log at the top of the OnEnable method.
Second, Make sure that the component itself is enabled and the game object is active and not deactivated.

The script’s onEnable started getting called without any changes.
So to be double sure I created a new script and tried the same thing in that but again onEnable is not called in the new script.
Is there any settings or way to create script or to write the logic or doing clean build.
I am not getting what am I missing here in such simple scripts with all the gameobjects and scripts active and enabled.