It's probably all my fault, and my guess is that the swig_env predated the Werror flag. I'm fine with your proposal.
Nate On Wed, Mar 20, 2013 at 11:33 AM, Steve Reinhardt <[email protected]> wrote: > Why do we care about compiler warnings in swig-generated code? > > I just started running some tests on my Ubuntu 10.04 machine (swig 1.3.40, > gcc 4.4.3), and I ran into this on a few different _wrap.cc files: > > [ CXX] ALPHA/python/swig/event_wrap.cc -> .fo > cc1plus: warnings being treated as errors > build/ALPHA/python/swig/event_wrap.cc: In function 'PyObject* > _wrap_new_Cycles(PyObject*, PyObject*)': > build/ALPHA/python/swig/event_wrap.cc:3380: error: 'argv[0]' may be used > uninitialized in this function > build/ALPHA/python/swig/event_wrap.cc: In function 'PyObject* > _wrap_simulate(PyObject*, PyObject*)': > build/ALPHA/python/swig/event_wrap.cc:4590: error: 'argv[0]' may be used > uninitialized in this function > scons: *** [build/ALPHA/python/swig/event_wrap.fo] Error 1 > scons: building terminated because of errors. > > I went poking around in src/SConscript and I see that we have a mildly > elaborate setup to (1) use a different build environment for swig files, > swig_env, so we can have finer-grain control over warnings, and (2) figure > out based on the compiler type and version which warnings to suppress. I > saw that the -Wno-maybe-uninitialized flag was added to swig_env only for > gcc versions >= 4.7, so I changed that to make it unconditional, only to > find that that flag isn't even valid for gcc 4.4; I had to use > -Wno-uninitialized instead. > > So I could solve my immediate problem by adding -Wno-uninitialized for gcc > 4.4, though I'm not sure if this is really a gcc 4.4 issue or a swig 1.3.40 > issue (or maybe it's specific to that particular combination). But in the > bigger picture I wonder: why do we really care? We're not going to go fix > the swig output to get rid of warnings, and as long as the code compiles > and runs, we probably don't care about them. Wouldn't it be simpler to get > rid of the whole swig_env thing and all the code that sets it up, and just > add 'Werror=False' when we compile swig sources? > > Steve > _______________________________________________ > gem5-dev mailing list > [email protected] > http://m5sim.org/mailman/listinfo/gem5-dev _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
