SWIG should definitely win the prize for worst implementation of a good idea, ever. Automatic wrapping of code sounds great, right? Well, it could be, but it's most certainly not. To the point where I can only recommend SWIG to people that I really don't like.
Why must they break things in EVERY SINGLE CONSECUTIVE RELEASE?! Do they hate us? Are they secretly fighting to keep C as the first and foremost language in open source development?
I'm thankful that I have always had the common sense to avoid using SWIG for my own projects, but I've had more than my own share of headaches maintaining software that depends on the beast, like PyOpenGL. As you can probably guess, that's what I'm dealing with right now. Although gouging my eyes out with a toothpick would be more pleasurable. I hope the devleopers of SWIG don't put it on their resume, cause it sure wouldn't get them hired anywhere I work.