Potential 4.3.1f1 bug Instantiate c#

Is this a potential bug, for the life of me I can’t see the error in the code. Everytime I run it, Unity editor freezes and I need to force-quit. Any help would be greatly appreciated. Thanks

using UnityEngine;
using System.Collections;

public class Enemy_Movement : MonoBehaviour
{
	public GameObject enemy;
	public GameObject enemyClone;
	public GameObject playerToAttack;
	public int maxEnemies = 10;

	void Start ()
	{
		CreateEnemy ();
	}

	void CreateEnemy ()
	{
		for (int count = 0; count <= maxEnemies; count++)
		{
			GameObject enemyClone = (GameObject) Instantiate (enemy, new Vector3 (0, 2, 0), Quaternion.identity);
		}
	}
}

using UnityEngine;
using System.Collections;

    public class Enemy_Movement : MonoBehaviour
    {
    public GameObject enemy;
    public GameObject enemyClone;
    public GameObject playerToAttack;
    public int maxEnemies = 10;
     
    void Start ()
    {
    CreateEnemy ();
    }
     
    void CreateEnemy ()
    {
    for (int count = 0; count <= maxEnemies; count++)
    {
    //GameObject enemyClone = (GameObject) Instantiate (enemy, new Vector3 (0, 2, 0), Quaternion.identity);
    //don't use a class back of a variable when you use GameObject then it need different variable name.
    enemyClone = Instantiate (enemy, new Vector3 (0, 2, 0), Quaternion.identity) as GameObject;
    }
    }
    }

Update: I split the EnemyGenerator and EnemyMovement scripts into 2 separate scripts and attached both to a LevelStatus empty gameobject and all works now. The C# code above works fine, looks like the script can’t be on the same gameobject it links.

Thanks again.