[libcamera-devel,v2,11/11] meson: Enable shadowed variable warning
diff mbox series

Message ID 20201015223750.58563-12-kieran.bingham@ideasonboard.com
State Accepted
Headers show
Series
  • Shadowed Variables
Related show

Commit Message

Kieran Bingham Oct. 15, 2020, 10:37 p.m. UTC
Shadowing variables can lead to unexpected bugs where a code path
utilises a variable that may not have been intended by the developer,
leading to hard to find bugs.

Enable warnings for shadowed variables as defined at:
  https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wshadow

As an effect of utilising -Werror, this will cause variable or type
shadowing to become a build-time error.

Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

---

The reference here is that I lost around 2 hours digging into a bug that
looked like some other code path was calling a destructor or such, but
was because I had accidentally aliased a private member variable in the
constructor, so all my initialisation was lost after the constructor
completed.

 meson.build | 1 +
 1 file changed, 1 insertion(+)

Patch
diff mbox series

diff --git a/meson.build b/meson.build
index de15cc16da81..10423f523ca5 100644
--- a/meson.build
+++ b/meson.build
@@ -38,6 +38,7 @@  if cc.has_header_symbol('stdlib.h', 'secure_getenv', prefix : '#define _GNU_SOUR
 endif
 
 common_arguments = [
+    '-Wshadow',
     '-include', 'config.h',
 ]