"Well if it's a sigma lens, it might be one that is incompatible with newer canon bodies (DSLRs) if this is the case and you're handy, you might want to try this hack:
http://www.martinmelchior.be/2013/04/con...
It involves adding an additional microcontroller inside your lens. Tricky but not Impossible (I just did it myself).
"Apparently this error code is common with digital SLR cameras as, I found out with my eos 350d.
Turn off the camera, remove lens, remove battery, remove cf.
wait about 30 minutes.
Insert battery and turn on but, leave the lens of & the cf card out
Take a picture. If you get err 99 your camera is broken and you will need to send it in for service.
Insert cf card if that gives you err 99 when you take a picture then its the cf and replace it.
Replace lens and take a picture.
If err 99 then its the lens or the contacts.
Clean your lens contacts on both the camera and the lens. Canon Tecks suggest to try this cleaning method, hold the body with the mount facing the ground & gently rub the connections with a pencil eraser then, do the same with the lens.
Retry. If you still get err 99 and it is a valuable lens, send it in for service.
If its a cheap lens, or if your desperate enough with a valuable lens try gently tapping it and shaking it. Repeatedly zoom in and out and focus while in manual focus setting. If no results try manually changing focus ring in autofocus mode.
"An error 99 is not anything, but is an undefined error that's not described by one of the documented error codes. That's been standard for decades. I always start with the quick-and-easy stuff. A soft pencil eraser to clean contacts on lens and body, and the battery. Visual check of memory card and compressed air to clean contacts of dirt.
Similarly, my flash gave an error, and compressed air cleaned the sensor arm in the tiny hole below it, and all was well. Use low pressure and be careful. Use extra light for a good visual inspection."