[LLVMbugs] [Bug 8979] New: "Can't deduce with depth > 0" assertion on invalid code

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sat Jan 15 01:36:03 PST 2011


http://llvm.org/bugs/show_bug.cgi?id=8979

           Summary: "Can't deduce with depth > 0" assertion on invalid
                    code
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: marc.glisse at normalesup.org
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


(I hit this trying to reduce an other issue with delta)

template < typename RT_ > class Root_of_2 {
        typedef __mpz_struct mpz_t[1];
        template <class T, class U> class __gmp_expr;
        template <class T, class U> void __gmp_set_expr(mpf_ptr, const
__gmp_expr<T, U> &);
        typedef __gmp_expr<mpz_t, mpz_t> mpz_class;
        template <> void __gmp_set_expr(mpz_ptr z, const mpz_class &w) {}
};

$ clang++ -fsyntax-only a.cc
[...]
clang: /data/repos/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp:925:
clang::Sema::TemplateDeductionResult DeduceTemplateArguments(clang::Sema&,
clang::TemplateParameterList*, clang::QualType, clang::QualType,
clang::sema::TemplateDeductionInfo&,
llvm::SmallVectorImpl<clang::DeducedTemplateArgument>&, unsigned int, bool,
llvm::SmallVectorImpl<DeductionQualifierComparison>*): Assertion
`TemplateTypeParm->getDepth() == 0 && "Can't deduce with depth > 0"' failed.
[...]

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list