[llvm-bugs] [Bug 45096] New: Conditional jump or move depends on uninitialised value

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Mar 3 22:34:15 PST 2020


https://bugs.llvm.org/show_bug.cgi?id=45096

            Bug ID: 45096
           Summary: Conditional jump or move depends on uninitialised
                    value
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: rafael at espindo.la
                CC: blitzrakete at gmail.com, dgregor at apple.com,
                    erik.pilkington at gmail.com, llvm-bugs at lists.llvm.org,
                    richard-llvm at metafoo.co.uk

Created attachment 23199
  --> https://bugs.llvm.org/attachment.cgi?id=23199&action=edit
testcase

Running

$ valgrind clang -cc1 -S -std=c++17 -o native-stack.s native-stack.ii

prints

==1872739== Conditional jump or move depends on uninitialised value(s)
==1872739==    at 0xE0CAF5E: clang::OverloadCandidate::getNumParams() const
(Overload.h:897)
==1872739==    by 0xE0B4FEB: (anonymous
namespace)::CompareOverloadCandidatesForDisplay::operator()(clang::OverloadCandidate
const*, clang::OverloadCandidate const*) (SemaOverload.cpp:11183)
==1872739==    by 0xE0C8232: bool __gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay>::operator()<clang::OverloadCandidate**,
clang::OverloadCandidate**>(clang::OverloadCandidate**,
clang::OverloadCandidate**) (predefined_ops.h:143)
==1872739==    by 0xE0C8171: void
std::__insertion_sort<clang::OverloadCandidate**,
__gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay> >(clang::OverloadCandidate**,
clang::OverloadCandidate**, __gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay>) (stl_algo.h:1846)
==1872739==    by 0xE0C9412: void
std::__chunk_insertion_sort<clang::OverloadCandidate**, long,
__gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay> >(clang::OverloadCandidate**,
clang::OverloadCandidate**, long, __gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay>) (stl_algo.h:2692)
==1872739==    by 0xE0C850F: void
std::__merge_sort_with_buffer<clang::OverloadCandidate**,
clang::OverloadCandidate**, __gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay> >(clang::OverloadCandidate**,
clang::OverloadCandidate**, clang::OverloadCandidate**,
__gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay>) (stl_algo.h:2710)
==1872739==    by 0xE0C7834: void
std::__stable_sort_adaptive<clang::OverloadCandidate**,
clang::OverloadCandidate**, long, __gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay> >(clang::OverloadCandidate**,
clang::OverloadCandidate**, clang::OverloadCandidate**, long,
__gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay>) (stl_algo.h:2742)
==1872739==    by 0xE0C6BC1: void
std::__stable_sort<clang::OverloadCandidate**,
__gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay> >(clang::OverloadCandidate**,
clang::OverloadCandidate**, __gnu_cxx::__ops::_Iter_comp_iter<(anonymous
namespace)::CompareOverloadCandidatesForDisplay>) (stl_algo.h:5033)
==1872739==    by 0xE0C629A: void std::stable_sort<clang::OverloadCandidate**,
(anonymous
namespace)::CompareOverloadCandidatesForDisplay>(clang::OverloadCandidate**,
clang::OverloadCandidate**, (anonymous
namespace)::CompareOverloadCandidatesForDisplay) (stl_algo.h:5102)
==1872739==    by 0xE0C5AE4: void
llvm::stable_sort<llvm::SmallVector<clang::OverloadCandidate*, 32u>&,
(anonymous
namespace)::CompareOverloadCandidatesForDisplay>(llvm::SmallVector<clang::OverloadCandidate*,
32u>&, (anonymous namespace)::CompareOverloadCandidatesForDisplay)
(STLExtras.h:1298)
==1872739==    by 0xE0B5B3F:
clang::OverloadCandidateSet::CompleteCandidates(clang::Sema&,
clang::OverloadCandidateDisplayKind, llvm::ArrayRef<clang::Expr*>,
clang::SourceLocation, llvm::function_ref<bool (clang::OverloadCandidate&)>)
(SemaOverload.cpp:11401)
==1872739==    by 0xE0B5BCB:
clang::OverloadCandidateSet::NoteCandidates(std::pair<clang::SourceLocation,
clang::PartialDiagnostic>, clang::Sema&, clang::OverloadCandidateDisplayKind,
llvm::ArrayRef<clang::Expr*>, llvm::StringRef, clang::SourceLocation,
llvm::function_ref<bool (clang::OverloadCandidate&)>) (SemaOverload.cpp:11414)

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200304/88736947/attachment.html>


More information about the llvm-bugs mailing list