I used to think the same thing, but am not so sure now. As I posted earlier, the marriage of self programming machines and nanobots could be a game changer.
Weaknesses in electromechanical assemblies will always remain. Batteries, optics, gyros and so forth.
Robotics that would be able to operate autonomous are pretty delicate in that each assy is so dependent upon another. If one assy is altered slightly, balance and mobility will cease to sync correctly. Every sensor is crucial to peak performance in operation.
Take for instance a sensor that registers the movement or full forward motion of a leg or an arm...whatever. That one sensor is vital to the proper synchronization of the forward/rear motion of the unit. Remove this sensor from the equation...robot moves no mo.
I could go on and on, but there will always be weaknesses.