This is the part of some Valgrind log:
==1652== Conditional jump or move depends on uninitialised value(s) ==1652== at 0x868DBFC: Dfm_db::io::Layer_cell_writer::end_cell() (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_db_io_layer.C:224) ==1652== by 0x862C9FD: Dfm_db::Hdb_layer_writer::end_cell() (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/../Isrc/dfm/dfm_db_io_layer.h:916) ==1652== by 0x861197F: Dfm_db::Hdb_writer::save_layer_geometries(Dfm_db::Hdb_layer_writer&, Drc_Hierarchical_database&, unsigned long, Drc_Hierarchical_geometry_type, bool, bool, bool, bool, Dfm_produced_layer_type) (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_db_hdb_io.C:2362) ==1652== by 0x8610755: Dfm_db::Hdb_writer::save_layer(Dfm_db::Database*, Drc_Hierarchical_database&, unsigned long, unsigned long, Dfm_db::Geometry_types, char const*, Dfm_db::Run_info&, Dfm_db::Layer_origin const&, char const*, bool, char const*, char const*, bool, Pdb_security*, bool, int, bool, bool, Dfm_db::must_be, Dfm_produced_layer_type) (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_db_hdb_io.C:2102) ==1652== by 0x8595B1E: Dfm_db::Database::save_layer(char const*, unsigned long, bool) (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_database.C:2490) ==1652== by 0x8594D39: Dfm_db::Database::save_layers(std::map, std::less, std::allocator > > >&) (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_database.C:2317) ==1652== by 0x85937B8: Dfm_db::Database::save_revision(bool) (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_database.C:2082) ==1652== by 0x4C6AE76: Cockpit_cli::save_revision(Dfm_db::must_be) (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/cockpit_db_rev_cli.C:520) ==1652== by 0x4C15153: cockpit_save_revision (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/cockpit_db_hier_rev_cmds.C:529) ==1652== by 0xD8BAC67: TclEvalObjvInternal (in /amy/ic_wg_server/CACHED_WG_SERVER/ic/comp/exports.v0-0_6-19-2015_engr-aoi/mgc_home/pkgs/icv_lib.aoi/lib64/libcalibre_utils.so) ==1652== by 0xD8E3255: TclExecuteByteCode (in /amy/ic_wg_server/CACHED_WG_SERVER/ic/comp/exports.v0-0_6-19-2015_engr-aoi/mgc_home/pkgs/icv_lib.aoi/lib64/libcalibre_utils.so) ==1652== by 0xD8E7280: TclCompEvalObj (in /amy/ic_wg_server/CACHED_WG_SERVER/ic/comp/exports.v0-0_6-19-2015_engr-aoi/mgc_home/pkgs/icv_lib.aoi/lib64/libcalibre_utils.so) ==1652== Uninitialised value was created by a stack allocation ==1652== at 0x859F6DC: Dfm_db::Database::get_pl_index_level() const (/home/lvardany/tmp_IWA/ic/lv/aoi-asserts-valg/dfm/Isrc/dfm_database.C:4325)
The last line is a result of --track-orgins option which shows exactly in which function uninitialized value was created. The only magical part of this output for me is that the last function doesn't appear in the call stack. Also --num-callers option was given to 20.
My question is how is it possible that the last function doesn't appear in a call stack?
Thanks!