public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/60852] New: boost::complement of enum class does not compile
@ 2014-04-15 19:20 nevin at eviloverlord dot com
  2014-04-15 20:02 ` [Bug c++/60852] boost::has_complement " redi at gcc dot gnu.org
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: nevin at eviloverlord dot com @ 2014-04-15 19:20 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

            Bug ID: 60852
           Summary: boost::complement of enum class does not compile
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: nevin at eviloverlord dot com

Created attachment 32608
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32608&action=edit
Reproducible test program

This works under gcc 4.7.2 and clang 3.4, but fails to compile under gcc 4.9
RC1.  enum class seems to be the only issue; plain enums work fine.

#include <boost/type_traits.hpp>
#include <iostream>

enum class E {};

int main()
{ std::cout << boost::has_complement<E>() << std::endl; }

Using Boost 1.55 and g++ -std=c++11, we get:

In file included from /opt/local/include/boost/config.hpp:57:0,
                 from /opt/local/include/boost/type_traits/add_const.hpp:13,
                 from /opt/local/include/boost/type_traits.hpp:13,
                 from a.cpp:1:
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp: In
instantiation of 'const bool
boost::detail::has_complement_impl::operator_exists<E>::value':
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:173:4:  
required from 'const bool boost::detail::has_complement_impl::trait_impl1<E,
boost::detail::has_complement_impl::dont_care, false>::value'
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:195:4:  
required from 'const bool boost::detail::has_complement_impl::trait_impl<E,
boost::detail::has_complement_impl::dont_care>::value'
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:202:1:  
required from 'struct boost::has_complement<E>'
a.cpp:7:41:   required from here
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:152:56:
error: no match for 'operator~' (operand type is 'E')
    BOOST_STATIC_CONSTANT(bool, value = (sizeof(check(((BOOST_TT_TRAIT_OP
make<Rhs>()),make<has_operator>())))==sizeof(::boost::type_traits::yes_type)));
                                                        ^
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp: In
instantiation of 'const bool
boost::detail::has_complement_impl::operator_returns_void<E>::value':
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:173:4:  
required from 'const bool boost::detail::has_complement_impl::trait_impl1<E,
boost::detail::has_complement_impl::dont_care, false>::value'
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:195:4:  
required from 'const bool boost::detail::has_complement_impl::trait_impl<E,
boost::detail::has_complement_impl::dont_care>::value'
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:202:1:  
required from 'struct boost::has_complement<E>'
a.cpp:7:41:   required from here
/opt/local/include/boost/type_traits/detail/has_prefix_operator.hpp:89:102:
error: no match for 'operator~' (operand type is 'E')
    BOOST_STATIC_CONSTANT(bool, value =
(sizeof(::boost::type_traits::yes_type)==sizeof(returns_void((BOOST_TT_TRAIT_OP
make<Rhs>(),returns_void_t())))));
                                                                               
                      ^
a.cpp: In function 'int main()':
a.cpp:7:41: error: cannot bind 'std::ostream {aka std::basic_ostream<char>}'
lvalue to 'std::basic_ostream<char>&&'
 { std::cout << boost::has_complement<E>() << std::endl; }
                                         ^
In file included from /opt/local/include/gcc49/c++/istream:39:0,
                 from /opt/local/include/gcc49/c++/sstream:38,
                 from /opt/local/include/gcc49/c++/complex:45,
                 from /opt/local/include/boost/type_traits/is_complex.hpp:12,
                 from /opt/local/include/boost/type_traits.hpp:49,
                 from a.cpp:1:
/opt/local/include/gcc49/c++/ostream:602:5: note: initializing argument 1 of
'std::basic_ostream<_CharT, _Traits>&
std::operator<<(std::basic_ostream<_CharT, _Traits>&&, const _Tp&) [with _CharT
= char; _Traits = std::char_traits<char>; _Tp = boost::has_complement<E>]'
     operator<<(basic_ostream<_CharT, _Traits>&& __os, const _Tp& __x)
     ^


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
@ 2014-04-15 20:02 ` redi at gcc dot gnu.org
  2014-04-15 20:24 ` trippels at gcc dot gnu.org
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: redi at gcc dot gnu.org @ 2014-04-15 20:02 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING
   Last reconfirmed|                            |2014-04-15
     Ever confirmed|0                           |1

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Preprocessed source, please. And ideally reduced so it doesn't contain a
billion lines of MPL!


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
  2014-04-15 20:02 ` [Bug c++/60852] boost::has_complement " redi at gcc dot gnu.org
@ 2014-04-15 20:24 ` trippels at gcc dot gnu.org
  2014-04-16  8:34 ` [Bug c++/60852] [4.8/4.9/4.10 Regression] " rguenth at gcc dot gnu.org
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-04-15 20:24 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |trippels at gcc dot gnu.org

--- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
reduced test case:

struct A;
typedef A false_;
struct A
{
};
template <int> struct B;
template <> struct B<false> : false_
{
};
template <int> struct C
{
  static const int value = 0;
};
template <typename T> T &make ();
struct D
{
  template <class T> D (T);
};
template <typename, typename, int> struct G;
template <typename Rhs> struct H
{
  static const int value = G<Rhs, int, 0>::value;
};
template <typename Rhs> struct I : B<H<Rhs>::value>
{
};
enum class E;
int operator~(const D &);
template <typename Rhs> struct F
{
  static const int value = sizeof ~make<Rhs>();
};
template <typename Rhs, typename Ret> struct G<Rhs, Ret, 0>
{
  static const int value = C<F<Rhs>::value>::value;
};
int main () { I<E>(); }

markus@x4 tmp % g++ -std=c++11 boost.ii
boost.ii: In instantiation of ‘const int F<E>::value’:
boost.ii:35:20:   required from ‘const int G<E, int, 0>::value’
boost.ii:22:20:   required from ‘const int H<E>::value’
boost.ii:24:32:   required from ‘struct I<E>’
boost.ii:37:20:   required from here
boost.ii:31:35: error: no match for ‘operator~’ (operand type is ‘E’)
   static const int value = sizeof ~make<Rhs>();
                                   ^
>From gcc-bugs-return-449112-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Apr 15 20:28:06 2014
Return-Path: <gcc-bugs-return-449112-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 4780 invoked by alias); 15 Apr 2014 20:28:05 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 4178 invoked by uid 48); 15 Apr 2014 20:28:00 -0000
From: "redi at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug libstdc++/60710] experimental::optional<T> is using T::operator!Date: Tue, 15 Apr 2014 20:28:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: libstdc++
X-Bugzilla-Version: 4.9.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: redi at gcc dot gnu.org
X-Bugzilla-Status: NEW
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-60710-4-TXi5lYCGjx@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-60710-4@http.gcc.gnu.org/bugzilla/>
References: <bug-60710-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-04/txt/msg01132.txt.bz2
Content-length: 290

http://gcc.gnu.org/bugzilla/show_bug.cgi?id`710

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The current Fundamentals TS draft (n3848) doesn't have those operator!overloads at all, so we may want to remove them entirely rather than fix them
... I'm not sure yet.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
  2014-04-15 20:02 ` [Bug c++/60852] boost::has_complement " redi at gcc dot gnu.org
  2014-04-15 20:24 ` trippels at gcc dot gnu.org
@ 2014-04-16  8:34 ` rguenth at gcc dot gnu.org
  2014-04-16  9:31 ` redi at gcc dot gnu.org
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-04-16  8:34 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |NEW
      Known to work|                            |4.7.2
   Target Milestone|---                         |4.8.3
            Summary|boost::has_complement of    |[4.8/4.9/4.10 Regression]
                   |enum class does not compile |boost::has_complement of
                   |                            |enum class does not compile
      Known to fail|                            |4.8.2, 4.9.0

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  Not sure if the code is valid.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (2 preceding siblings ...)
  2014-04-16  8:34 ` [Bug c++/60852] [4.8/4.9/4.10 Regression] " rguenth at gcc dot gnu.org
@ 2014-04-16  9:31 ` redi at gcc dot gnu.org
  2014-04-16  9:32 ` jakub at gcc dot gnu.org
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: redi at gcc dot gnu.org @ 2014-04-16  9:31 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Further reduced:

struct D
{
  template <class T> D (T);
};
int operator~(const D &);

template <typename T> T &make ();

template <typename Rhs> struct H
{
  static const int value = sizeof ~make<Rhs>();
};

enum class E;

int main () { return H<E>::value; }


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (3 preceding siblings ...)
  2014-04-16  9:31 ` redi at gcc dot gnu.org
@ 2014-04-16  9:32 ` jakub at gcc dot gnu.org
  2014-04-16  9:35 ` redi at gcc dot gnu.org
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-04-16  9:32 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org,
                   |                            |paolo at gcc dot gnu.org

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Started to be rejected with r192471 aka PR17805.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (4 preceding siblings ...)
  2014-04-16  9:32 ` jakub at gcc dot gnu.org
@ 2014-04-16  9:35 ` redi at gcc dot gnu.org
  2014-04-16 10:05 ` paolo.carlini at oracle dot com
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: redi at gcc dot gnu.org @ 2014-04-16  9:35 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Both clang and G++ reject:

  static const int value = sizeof ~make<E>();

Whereas clang accepts (and G++ rejects) the same expression using a dependent
type:

template <typename Rhs> struct H
{
  static const int value = sizeof ~make<Rhs>();
};

Clang constructs a temporary D and applies operator~ to that temporary


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (5 preceding siblings ...)
  2014-04-16  9:35 ` redi at gcc dot gnu.org
@ 2014-04-16 10:05 ` paolo.carlini at oracle dot com
  2014-04-16 12:36 ` trippels at gcc dot gnu.org
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: paolo.carlini at oracle dot com @ 2014-04-16 10:05 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |paolo.carlini at oracle dot com

--- Comment #8 from Paolo Carlini <paolo.carlini at oracle dot com> ---
I'm about to take a few days off, but note that the patch from Alexandre which
I moved forward fixed an accept invalid. Thus if you like, before leaving I can
revert it in the branches and return to it for 4.10. Let me know.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (6 preceding siblings ...)
  2014-04-16 10:05 ` paolo.carlini at oracle dot com
@ 2014-04-16 12:36 ` trippels at gcc dot gnu.org
  2014-04-16 13:16 ` galopin at gmail dot com
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-04-16 12:36 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

--- Comment #12 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
The guys on stackoverflow think it's invalid:
http://stackoverflow.com/questions/23108590/is-this-valid-c11


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (7 preceding siblings ...)
  2014-04-16 12:36 ` trippels at gcc dot gnu.org
@ 2014-04-16 13:16 ` galopin at gmail dot com
  2014-04-16 14:18 ` trippels at gcc dot gnu.org
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: galopin at gmail dot com @ 2014-04-16 13:16 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 3319 bytes --]

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Nicolas Silvagni <galopin at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |galopin at gmail dot com

--- Comment #13 from Nicolas Silvagni <galopin at gmail dot com> ---
Clang is wrong, only operator taking E or reference to E can contribute.

In 13.3.1.2 §3

For a unary operator @ with an operand of a type whose cv-unqualified version
is T1, and for a binary operator @ with a left operand of a type whose
cv-unqualified version is T1 and a right operand of a type whose cv-unqualified
version is T2, three sets of candidate functions, designated member candidates,
nonmember candidates and built-in candidates, are constructed as follows:


Follow by :

However, if no operand has a class type, only those non-member functions in the
lookup set that have a first parameter of type T1 or “reference to (possibly
cv-qualified) T1”, when T1 is an enumeration type, or (if there is a right
operand) a second parameter of type T2 or “reference to (possibly cv-qualified)
T2”, when T2 is an enumeration type, are candidate functions.
>From gcc-bugs-return-449165-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Apr 16 13:23:16 2014
Return-Path: <gcc-bugs-return-449165-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 12947 invoked by alias); 16 Apr 2014 13:23:15 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 12898 invoked by uid 48); 16 Apr 2014 13:23:12 -0000
From: "rguenth at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug tree-optimization/60849] [4.7/4.8/4.9/4.10 Regression] bogus comparison result type
Date: Wed, 16 Apr 2014 13:23:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: tree-optimization
X-Bugzilla-Version: 4.9.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: rguenth at gcc dot gnu.org
X-Bugzilla-Status: ASSIGNED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: rguenth at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 4.7.4
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: attachments.created
Message-ID: <bug-60849-4-EqZq6T18OZ@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-60849-4@http.gcc.gnu.org/bugzilla/>
References: <bug-60849-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-04/txt/msg01185.txt.bz2
Content-length: 221

http://gcc.gnu.org/bugzilla/show_bug.cgi?id`849

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 32616
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id2616&actioníit
patch


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (8 preceding siblings ...)
  2014-04-16 13:16 ` galopin at gmail dot com
@ 2014-04-16 14:18 ` trippels at gcc dot gnu.org
  2014-04-16 21:04 ` redi at gcc dot gnu.org
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-04-16 14:18 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |INVALID

--- Comment #14 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
Thanks Nicolas. Closing.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (9 preceding siblings ...)
  2014-04-16 14:18 ` trippels at gcc dot gnu.org
@ 2014-04-16 21:04 ` redi at gcc dot gnu.org
  2014-04-16 21:19 ` redi at gcc dot gnu.org
  2014-04-17  6:19 ` trippels at gcc dot gnu.org
  12 siblings, 0 replies; 14+ messages in thread
From: redi at gcc dot gnu.org @ 2014-04-16 21:04 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

--- Comment #17 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Markus Trippelsdorf from comment #16)
> Unfortunately filing bugs for clang is like posting to /dev/null 
> most of the time.

That's not my experience - if it hasn't been filed yet I'll do so.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (10 preceding siblings ...)
  2014-04-16 21:04 ` redi at gcc dot gnu.org
@ 2014-04-16 21:19 ` redi at gcc dot gnu.org
  2014-04-17  6:19 ` trippels at gcc dot gnu.org
  12 siblings, 0 replies; 14+ messages in thread
From: redi at gcc dot gnu.org @ 2014-04-16 21:19 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

--- Comment #18 from Jonathan Wakely <redi at gcc dot gnu.org> ---
http://llvm.org/bugs/show_bug.cgi?id=19452


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Bug c++/60852] [4.8/4.9/4.10 Regression] boost::has_complement of enum class does not compile
  2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
                   ` (11 preceding siblings ...)
  2014-04-16 21:19 ` redi at gcc dot gnu.org
@ 2014-04-17  6:19 ` trippels at gcc dot gnu.org
  12 siblings, 0 replies; 14+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-04-17  6:19 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60852

--- Comment #19 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #17)
> (In reply to Markus Trippelsdorf from comment #16)
> > Unfortunately filing bugs for clang is like posting to /dev/null 
> > most of the time.
> 
> That's not my experience - if it hasn't been filed yet I'll do so.
> http://llvm.org/bugs/show_bug.cgi?id=19452

I was wrong this time:

 % clang++ -std=c++11 b.ii
b.ii:11:35: error: invalid argument type 'E' to unary expression
  static const int value = sizeof ~make<Rhs>();
                                  ^~~~~~~~~~~~
b.ii:16:22: note: in instantiation of template class 'H<E>' requested here
int main () { return H<E>::value; }
                     ^
1 error generated.


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2014-04-17  6:19 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-15 19:20 [Bug c++/60852] New: boost::complement of enum class does not compile nevin at eviloverlord dot com
2014-04-15 20:02 ` [Bug c++/60852] boost::has_complement " redi at gcc dot gnu.org
2014-04-15 20:24 ` trippels at gcc dot gnu.org
2014-04-16  8:34 ` [Bug c++/60852] [4.8/4.9/4.10 Regression] " rguenth at gcc dot gnu.org
2014-04-16  9:31 ` redi at gcc dot gnu.org
2014-04-16  9:32 ` jakub at gcc dot gnu.org
2014-04-16  9:35 ` redi at gcc dot gnu.org
2014-04-16 10:05 ` paolo.carlini at oracle dot com
2014-04-16 12:36 ` trippels at gcc dot gnu.org
2014-04-16 13:16 ` galopin at gmail dot com
2014-04-16 14:18 ` trippels at gcc dot gnu.org
2014-04-16 21:04 ` redi at gcc dot gnu.org
2014-04-16 21:19 ` redi at gcc dot gnu.org
2014-04-17  6:19 ` trippels at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).