You know, I don't think we are going to see the rise of the machines any time soon. I'm currently writing an article about how our team started adapting the PVS-Studio analyzer to the needs of embedded-software developers. As the first step, we supported KEIL and IAR. Examining the bugs found in some of the projects for embedded devices left me overwhelmed with emotions, which I'd like to share with you. The best way to do that, I suppose, is to show you a couple of pictures and bug examples.
Now, what usually comes to our mind when we think about glitchy robots? A layperson's imagination typically paints the following picture:
But when in the code of the RT-Thread operating system, I come across bugs like this, I don't believe any of that will come true.
When the Terminator pulls up at the police station to kill Sarah Connor, it'll end up like this:
So, you can sleep peacefully for now.
Oh, wait, I forgot to tell you that I'm going to write an article where I will show how PVS-Studio will be able to detect bugs like that... Oops!