[cfe-dev] Failing test SemaCXX/underlying_type.cpp on Mingw/Msys

Matthieu Monrocq matthieu.monrocq at gmail.com
Wed May 25 10:00:58 PDT 2011


Hello,

SemaCXX/underlying_type.cpp fails on Mingw/Msys with the following message:

  Assertion failed: (PtrVal & ((1 << PtrTraits::NumLowBitsAvailable)-1)) ==
0 && "Pointer is not sufficiently aligned", file
d:/clang/llvm/include/llvm/ADT/PointerIntPair.h, line 80

>From this function:

  void setPointer(PointerTy Ptr) {
    intptr_t PtrVal
      = reinterpret_cast<intptr_t>(PtrTraits::getAsVoidPointer(Ptr));
    assert((PtrVal & ((1 << PtrTraits::NumLowBitsAvailable)-1)) == 0 &&
           "Pointer is not sufficiently aligned");
    // Preserve all low bits, just update the pointer.
    Value = PtrVal | (Value & ~PointerBitMask);
  }

I don't know whether the problem only occurs on mingw/msys or also occurs on
a "bare" windows system.

-- Matthieu.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20110525/9514b734/attachment.html>


More information about the cfe-dev mailing list