[LLVMbugs] [Bug 13798] New: ext_vector_type cannot be used in stl containers

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sat Sep 8 10:43:49 PDT 2012


             Bug #: 13798
           Summary: ext_vector_type cannot be used in stl containers
           Product: libc++
           Version: unspecified
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
        AssignedTo: hhinnant at apple.com
        ReportedBy: lordzippy at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

STL containers, such as vector and set, cannot be instantiated with an extended
vector type as the template parameter.

To Reproduce:
#include <vector>

typedef float v4f __attribute__((ext_vector_type(4)));

int main(int argc, char** argv){
    std::vector< v4f > points;

Actual Results:
Compilation fails with:
$ clang++ -std=c++11 -stdlib=libc++ vectorTest.cpp
In file included from vectorTest.cpp:1:
In file included from /usr/bin/../lib/c++/v1/vector:261:
In file included from /usr/bin/../lib/c++/v1/__bit_reference:15:
In file included from /usr/bin/../lib/c++/v1/algorithm:594:
/usr/bin/../lib/c++/v1/memory:1750:61: error: object expression of non-scalar
      type 'float __attribute__((ext_vector_type(4)))' cannot be used in a
      pseudo-destructor expression
    _LIBCPP_INLINE_VISIBILITY void destroy(pointer __p) {__p->~_Tp();}

Build & Platform:
Mac OS X 10.8.1, Apple clang version 4.0 (tags/Apple/clang-421.0.57) (based on
LLVM 3.1svn)

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