incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Farid Zaripov (JIRA)" <>
Subject [jira] Created: (STDCXX-297) std::bitset constructor addressed memory beyond the object
Date Fri, 06 Oct 2006 12:39:19 GMT
std::bitset constructor addressed memory beyond the object

                 Key: STDCXX-297
             Project: C++ Standard Library
          Issue Type: Bug
          Components: 23. Containers
    Affects Versions: 4.1.3
         Environment: All
            Reporter: Farid Zaripov
            Priority: Trivial
             Fix For: 4.2

he program below fails:

#include <cassert>
#include <new>
#include <bitset>
#include <string>
#include <cstddef>
#include <string.h>

int main ()
    typedef std::bitset<128> BitSet;
    const std::size_t size = sizeof (BitSet);

    char buf [size + 4];
    memset (buf, '\xff', sizeof (buf));

    BitSet* btest = new (buf) BitSet (std::basic_string<int> ());

    for (std::size_t i = size; i < sizeof (buf); ++i)
        assert ('\xff' == buf [i]);

    btest->~BitSet ();

    return 0;
Assertion failed: '\xff' == buf [i], file test.cpp, line 19

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message