[llvm-bugs] [Bug 33526] New: double parameter pack extend

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Jun 20 07:10:09 PDT 2017


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

            Bug ID: 33526
           Summary: double parameter pack extend
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Frontend
          Assignee: unassignedclangbugs at nondot.org
          Reporter: gabriel.degrimouard at gmail.com
                CC: llvm-bugs at lists.llvm.org

Created attachment 18670
  --> https://bugs.llvm.org/attachment.cgi?id=18670&action=edit
Contain the error message and the 2 files create by clang

Hello,

Doing a mistake in my program, I made clang++ segfault. Here is a simple sample
of it.

#include <iostream>

void dump()
{}

template <typename Data, typename Data2, typename... Datas>
void     dump(Data&& data, Data2&& data2, Datas&&... datas)
{
    std::cout << data << ":\t" << data2 << std::endl;
    dump(datas..., datas...);
}

template <typename Data, typename Data2>
void     dump(Data&& data, Data2&& data2)
{
    std::cout << data << ":\t" << data2 << std::endl;
}

int main(int argc, char *argv[])
{
    dump("cornealReflexion", 42.0, "cameraPos", 27.3f, "titi", 42);
    return 0;
}

It segfault when instead of doing: dump(datas...); I do: dump(datas...,
datas...);

The full message and stacktrace is in the attachment files

-- 
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/20170620/6f5eaa8f/attachment.html>


More information about the llvm-bugs mailing list