$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-04-15 01:46:23
Hello,
I've just found out that the following program:
    #include <boost/static_assert.hpp>
    int main()
    {
        BOOST_STATIC_ASSERT(false);
        return 0;
    }
compiled with gcc 3.3 produces:
   sa.cpp:6: error: invalid application of `sizeof' to an incomplete type
which is not as nice as 
   sa.cpp:6: `sizeof' applied to incomplete type 
`boost::STATIC_ASSERTION_FAILURE<false>'
that gcc 2.95 generates and 
   sa.cpp:6: `sizeof' applied to incomplete type `
      boost::STATIC_ASSERTION_FAILURE<false>'
That 3.2 generates. The behaviour of 3.4 is the same as for 3.3.
So, there are some questions:
1. Should I bug gcc developers about this?
2. Anybody knows another way to force better diagnostic?
3. Is it possible to make regression tests for static_assert always include 
compiler messages, so that we know the diagnostic is OK?
- Volodya