That only applies to warnings in conjunction with optimisations though, just turning optimisations on (as shown in the example slide) won't necessarily pick up uninitialised variables. For example, if I compile the example given in the slides with -O, -O1, -O2 or -O3 with gcc, I don't get an error/warning, but I do if I use -Wall.
Also, you can use -Wuninitialized without optimisations and it picks up the problem, at least in my version of gcc (4.5.2).