Closed GoogleCodeExporter closed 9 years ago
I understand the first two warnings but don't know what the last one is about.
I
tried gcc 4.0.3 and it doesn't generate the last warning. Could you please
provide a
patch for review? I already have a pending patch for the first two warnings,
so your
patch only needs to cover the last one. Thanks.
Original comment by zhanyong...@gmail.com
on 24 Mar 2009 at 10:08
Original comment by zhanyong...@gmail.com
on 24 Mar 2009 at 10:17
g++ thinks that the default constructor of the base class should be explicitly
invoked:
--- gtest-param-util.h.orig 2009-03-26 17:50:43.000000000 -0400
+++ gtest-param-util.h 2009-03-26 17:50:58.000000000 -0400
@@ -245,8 +245,8 @@
private:
Iterator(const Iterator& other)
- : base_(other.base_), value_(other.value_), index_(other.index_),
- step_(other.step_) {}
+ : ParamIteratorInterface<T>(), base_(other.base_),
+ value_(other.value_), index_(other.index_), step_(other.step_) {}
const ParamGeneratorInterface<T>* const base_;
T value_;
Original comment by josh...@gmail.com
on 26 Mar 2009 at 9:51
Thanks. Could you upload a patch to the code review tool?
Original comment by zhanyong...@gmail.com
on 31 Mar 2009 at 7:39
Sorry - it has been a while and I forgot the status: is there any remaining
work needed
for this, Josh?
Original comment by zhanyong...@gmail.com
on 5 Jun 2009 at 6:10
Sorry, I'd forgotten about this too.
For reasons beyond my understanding, I can no longer get gcc 4.1.2 to throw that
warning, and we've upgraded gcc since then. I can upload the patch from
comment 3 to
the code review tool if you'd still like to see it included, but it would no
longer
affect me (or, I suspect, others), so whatever you want is fine.
Original comment by josh...@gmail.com
on 11 Jun 2009 at 1:44
Closed as Josh indicated.
Original comment by zhanyong...@gmail.com
on 19 Jun 2009 at 4:01
We get exactly this error when building Chrome with -Wextra. Unfortunately,
since this is a gtest header that
is included by our tests, there is no workaround except to disable -Wextra for
all of our tests. :(
.../testing/gtest/include/gtest/internal/gtest-param-util.h: In copy
constructor
'testing::internal::RangeGenerator<T, IncrementT>::Iterator::Iterator(const
testing::internal::RangeGenerator<T, IncrementT>::Iterator&) [with T = int,
IncrementT = int]':
.../testing/gtest/include/gtest/internal/gtest-param-util.h:234: instantiated
from
'testing::internal::ParamIteratorInterface<T>*
testing::internal::RangeGenerator<T,
IncrementT>::Iterator::Clone() const [with T = int, IncrementT = int]'
.../chrome/browser/sync/syncable/directory_backing_store_unittest.cc:685:
instantiated from here
.../testing/gtest/include/gtest/internal/gtest-param-util.h:249:warning: base
class 'class
testing::internal::ParamIteratorInterface<int>' should be explicitly
initialized in the copy constructor
I in fact had written same patch locally:
$ svn diff
Index: include/gtest/internal/gtest-param-util.h
===================================================================
--- include/gtest/internal/gtest-param-util.h (revision 359)
+++ include/gtest/internal/gtest-param-util.h (working copy)
@@ -247,7 +247,8 @@
private:
Iterator(const Iterator& other)
- : base_(other.base_), value_(other.value_), index_(other.index_),
+ : ParamIteratorInterface<T>(other),
+ base_(other.base_), value_(other.value_), index_(other.index_),
step_(other.step_) {}
// No implementation - assignment is unsupported.
Would you like me to upload it to a code review system or is that sufficient?
Original comment by evan@chromium.org
on 16 Mar 2010 at 5:47
BTW, I tried to see if I could just disable this warning, but I'm not sure if I
can.
I found this diff which doesn't look promising:
http://gcc.gnu.org/viewcvs/trunk/gcc/cp/init.c?r1=132324&r2=132323&pathrev=13232
4
(note the blanket test of "extra_warnings")
Original comment by evan@chromium.org
on 16 Mar 2010 at 5:49
Bumps up the priority as it blocks chromium work.
I'm working on this. Expect a patch soon.
Original comment by w...@google.com
on 16 Mar 2010 at 6:44
Fixed in r394.
Original comment by w...@google.com
on 17 Mar 2010 at 12:14
Original issue reported on code.google.com by
josh...@gmail.com
on 23 Mar 2009 at 8:48