Warn unused resut as macro that can be deactivated by defines

Hi,
First, thanks for the great lib :)

I'm currently working on a automatic wrapper to use it through numpy using swig. (actually work is done, I'm just publishing it ;) ). This way minimize maintaining effort and allow me to use it without cost into existing opencv/numpy code. 

The small changes I'll propose in next patches are not specific to my swig effort  : this will take place in different repo as if I correctly understood it's not in the philosophy of the main lib (which I totally understand). However, that's things that make it more portable and might benefit other people and that's why I propose the pull requests and I would be glad if the little things I change are reported to your main repo ;)

This first patch is about mandatory modification of the header for swig use of the lib.
From docs found, this should also be taken into account depending on gcc version (<3.4). Alternatively could be a ifndef with default value, but from what I found this way to define warn_unused_result is pretty usual.