blob: 182658a459f9d5c529aa83c7c1fae34516613783 [file] [log] [blame]
Brian Silverman50051a92018-08-04 20:43:41 -07001// (C) Copyright Steve Cleary & John Maddock 2000.
2// Use, modification and distribution are subject to the
3// Boost Software License, Version 1.0. (See accompanying file
4// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6// See http://www.boost.org for most recent version including documentation.
7
8#include <boost/static_assert.hpp>
9
10//
11// this tests should fail:
12//
13typedef char a1[2];
14typedef char a2[3];
15
16struct Bob
17{
18 private: // can be in private, to avoid namespace pollution
19 BOOST_STATIC_ASSERT(sizeof(a1) == sizeof(a2)); // will not compile
20 public:
21
22 // Member function scope: provides access to member variables
23 int x;
24 char c;
25 int f()
26 {
27#ifndef _MSC_VER // broken sizeof in VC6
28 BOOST_STATIC_ASSERT(sizeof(x) == 4);
29 BOOST_STATIC_ASSERT(sizeof(c) == 1);
30#endif
31 return x;
32 }
33};
34
35
36
37
38
39