The code that you show seems to be OK. I suspect that one of the arguments (y or t) in the script or function that is calling plot_cos(y,t) is not a vector of double values. Somehow you are passing it the wrong type of argument. Check to see where you assign the variables y and t in the calling program.
Also check to see is the error really coming from the plot_cos(y,t) or do you have some more lines of code after you make the plot, and the error is coming from one of the later calls.
If you are still stuck, please attach your full code that reproduces the problem.