Error with functions and Invoke

My script:

#pragma strict
var LoadingSign : Texture2D;
var load = false;

function Start()
{
    Invoke(loading, 5);
}

function loading()
{
	Application.LoadLevel(1);
	}	
function OnGUI(){
 theGUILoad();
}

function theGUILoad(){
 GUI.Label(Rect(450, 150, 400, 500), LoadingSign);
}

The errors:

Assets/LoadingScreenIntroFirst.js(7,11): BCE0017: The best overload for the method ‘UnityEngine.MonoBehaviour.Invoke(String, float)’ is not compatible with the argument list ‘(function(): void, int)’.


I am trying to make a script so that after 5 seconds a function is played that will load the next scene. Don’t worry about the GUI. It works fine, but for some reason Invoke won’t run the function after 5 seconds because of this error. I need urgent help as I cannot work further on my game until this is fixed.

I’m not sure how the error could be any clearer… you’re passing a function to Invoke. It wants a string:

Invoke("loading", 5);