Instantiate Don't Work U5

I’ve tried every piece of code in the scripting reference, I’ve tried google, found some different ways of doing it, they don’t work either.

What in the freak has Unity 5 done to Instantiate?

I keep getting these error

“CS1502: The best overloaded method match for `UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion)’ has some invalid arguments”

And " CS1503: Argument #1' cannot convert float’ expression to type `UnityEngine.Object’"

Here is the single line of code I used.

Instantiate(FishPrefab, transform.position, transform.rotation);

How is that WRONG!?

I’ve even tried

Rigidbody TmpFish;
TmpFish = Instantiate(FishPrefab, transform.position, transform.rotation) as Rigidbody;

Even tried

GameObject TmpFish;
TmpFish = Instantiate(FishPrefab, transform.position, transform.rotation) as GameObject;

Nothing freaking works, it’s quite aggravating.
Is there some new way of Instantiating in Unity 5 that it’s not even updated in the scripting reference?

“FishPrefab” doesn’t seem to be a GameObject. It looks like it’s a float instead. Can you doublecheck?