http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55418



             Bug #: 55418

           Summary: Valgrind: Conditional jump or move depends on

                    uninitialised value(s) in implicitly_declare_fn()

                    method.c:1623

    Classification: Unclassified

           Product: gcc

           Version: 4.8.0

            Status: UNCONFIRMED

          Severity: normal

          Priority: P3

         Component: c++

        AssignedTo: unassig...@gcc.gnu.org

        ReportedBy: mar...@trippelsdorf.de





Just saw this during a -enable-checking=yes,valgrind build:



 % /var/tmp/gcc_valgrind/usr/local/bin/g++ -std=gnu++11 -c

/home/markus/gcc/libstdc++-v3/src/c++11/functexcept.cc

==1267== Conditional jump or move depends on uninitialised value(s)

==1267==    at 0x637C0F: implicitly_declare_fn(special_function_kind,

tree_node*, bool, tree_node*, tree_node*) (method.c:1623)

==1267==    by 0x6392DF: lazily_declare_fn(special_function_kind, tree_node*)

(method.c:1894)

==1267==    by 0x63FB74: lookup_fnfields_1(tree_node*, tree_node*)

(search.c:1441)

==1267==    by 0x63FD3B: lookup_fnfields_slot(tree_node*, tree_node*)

(search.c:1471)

==1267==    by 0x64367B: lookup_field_r(tree_node*, void*) (search.c:1031)

==1267==    by 0x6400CE: dfs_walk_all(tree_node*, tree_node* (*)(tree_node*,

void*), tree_node* (*)(tree_node*, void*), void*) (search.c:1572)

==1267==    by 0x6402E7: lookup_member(tree_node*, tree_node*, int, bool, int)

(search.c:1204)

==1267==    by 0x640640: lookup_fnfields(tree_node*, tree_node*, int)

(search.c:1295)

==1267==    by 0x4DF3B0: build_special_member_call(tree_node*, tree_node*,

vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, int) (call.c:7282)

==1267==    by 0x4E0693: convert_like_real(conversion*, tree_node*, tree_node*,

int, int, bool, bool, int) (call.c:5718)

==1267==    by 0x4E1D91: build_over_call(z_candidate*, int, int) (call.c:6867)

==1267==    by 0x4DE229: build_new_method_call(tree_node*, tree_node*,

vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, tree_node**, int)

(call.c:7668)

==1267== 



Looks like some booleans in implicitly_declare_fn should be initialised.

Reply via email to