public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression
@ 2005-09-02 9:01 caolanm at redhat dot com
2005-09-02 9:05 ` [Bug c++/23691] " caolanm at redhat dot com
` (23 more replies)
0 siblings, 24 replies; 25+ messages in thread
From: caolanm at redhat dot com @ 2005-09-02 9:01 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2369 bytes --]
boost template causing error
gcc --version
gcc (GCC) 4.0.1 20050831 (Red Hat 4.0.1-12)
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
/usr/include/boost/detail/sp_counted_impl.hpp: In member function âvirtual void*
boost::detail::sp_counted_impl_pd<P, D>::get_deleter(const std::type_info&)â:
/usr/include/boost/detail/sp_counted_impl.hpp:147: error:
âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ
because it is a non-constant expression
/usr/include/boost/detail/sp_counted_impl.hpp:147: error:
âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ
because it is a non-constant expression
../inc/layermanager.hxx: In member function âvoid
presentation::internal::LayerManager::forEachShape(const Functor&) constâ:
../inc/layermanager.hxx:299: error: âmpl_::bool_<false>::valueâ is not a valid
template argument for type âboolâ because it is a non-constant expression
../inc/layermanager.hxx:299: error: âmpl_::bool_<false>::valueâ is not a valid
template argument for type âboolâ because it is a non-constant expression
../inc/layermanager.hxx: In member function âvoid
presentation::internal::LayerManager::forEachShape(const Functor&)â:
../inc/layermanager.hxx:333: error: âmpl_::bool_<false>::valueâ is not a valid
template argument for type âboolâ because it is a non-constant expression
../inc/layermanager.hxx:333: error: âmpl_::bool_<false>::valueâ is not a valid
template argument for type âboolâ because it is a non-constant expression
--
Summary: âmpl_::bool_<false>::valueâ is not a valid template
argument for type âboolâ because it is a non-
constant expression
Product: gcc
Version: 4.0.1
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: caolanm at redhat dot com
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
@ 2005-09-02 9:05 ` caolanm at redhat dot com
2005-09-02 12:02 ` pinskia at gcc dot gnu dot org
` (22 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: caolanm at redhat dot com @ 2005-09-02 9:05 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From caolanm at redhat dot com 2005-09-02 09:05 -------
Created an attachment (id=9645)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9645&action=view)
testcase
I'm sure this worked very recently
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
2005-09-02 9:05 ` [Bug c++/23691] " caolanm at redhat dot com
@ 2005-09-02 12:02 ` pinskia at gcc dot gnu dot org
2005-09-02 13:05 ` [Bug c++/23691] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' " jakub at gcc dot gnu dot org
` (21 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 12:02 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 12:02 -------
This works for me on both the mainline and the 4.0 branch. And 4.0.0.
Since this is a redhat specific version of GCC, please report it to them instead as it works with FSF
released GCC.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
2005-09-02 9:05 ` [Bug c++/23691] " caolanm at redhat dot com
2005-09-02 12:02 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 13:05 ` jakub at gcc dot gnu dot org
2005-09-02 13:07 ` [Bug c++/23691] [4.0 Regression] " pinskia at gcc dot gnu dot org
` (20 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-09-02 13:05 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2612 bytes --]
------- Additional Comments From jakub at gcc dot gnu dot org 2005-09-02 13:05 -------
I can reproduce it on a (freshly updated) stock gcc-4_0-branch:
./cc1plus --version; ./cc1plus -quiet -m32 testcase.ii
GNU C++ version 4.0.2 20050902 (prerelease) (x86_64-unknown-linux-gnu)
compiled by GNU C version 4.0.1 20050727 (Red Hat 4.0.1-5).
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=127988
/usr/include/boost/detail/sp_counted_impl.hpp: In member function irtual void*
boost::detail::sp_counted_impl_pd<P, D>::get_deleter(const std::type_info&)':
/usr/include/boost/detail/sp_counted_impl.hpp:147: error:
pl_::bool_<false>::value' is not a valid template argument for type
ool' because it is a non-constant expression
/usr/include/boost/detail/sp_counted_impl.hpp:147: error:
pl_::bool_<false>::value' is not a valid template argument for type
ool' because it is a non-constant expression
../inc/layermanager.hxx: In member function oid
presentation::internal::LayerManager::forEachShape(const Functor&) const':
../inc/layermanager.hxx:299: error: pl_::bool_<false>::value' is not a valid
template argument for type ool' because it is a non-constant expression
../inc/layermanager.hxx:299: error: pl_::bool_<false>::value' is not a valid
template argument for type ool' because it is a non-constant expression
../inc/layermanager.hxx: In member function oid
presentation::internal::LayerManager::forEachShape(const Functor&)':
../inc/layermanager.hxx:333: error: pl_::bool_<false>::value' is not a valid
template argument for type ool' because it is a non-constant expression
../inc/layermanager.hxx:333: error: pl_::bool_<false>::value' is not a valid
template argument for type ool' because it is a non-constant expression
FYI, gcc/cp/ of gcc-4_0-branch and gcc-4_0-rhl-branch is identical.
If I revert http://gcc.gnu.org/ml/gcc-cvs/2005-08/msg00946.html
(aka PR c++/23099 fix), the problem goes away.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |UNCONFIRMED
Resolution|INVALID |
Summary|âmpl_::bool_<false>::value|`mpl_::bool_<false>::value'
|â is not a valid template |is not a valid template
|argument for type âboolâ|argument for type `bool'
|because it is a non-constant|because it is a non-constant
|expression |expression
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (2 preceding siblings ...)
2005-09-02 13:05 ` [Bug c++/23691] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' " jakub at gcc dot gnu dot org
@ 2005-09-02 13:07 ` pinskia at gcc dot gnu dot org
2005-09-02 13:11 ` pinskia at gcc dot gnu dot org
` (19 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 13:07 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |pinskia at gcc dot gnu dot
| |org, mmitchel at gcc dot gnu
| |dot org
Keywords| |rejects-valid
Known to fail| |4.0.2
Known to work| |4.0.0
Summary|`mpl_::bool_<false>::value' |[4.0 Regression]
|is not a valid template |`mpl_::bool_<false>::value'
|argument for type `bool' |is not a valid template
|because it is a non-constant|argument for type `bool'
|expression |because it is a non-constant
| |expression
Target Milestone|--- |4.0.2
Version|4.0.1 |4.0.2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (3 preceding siblings ...)
2005-09-02 13:07 ` [Bug c++/23691] [4.0 Regression] " pinskia at gcc dot gnu dot org
@ 2005-09-02 13:11 ` pinskia at gcc dot gnu dot org
2005-09-02 13:13 ` pinskia at gcc dot gnu dot org
` (18 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 13:11 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 13:11 -------
(In reply to comment #3)
> FYI, gcc/cp/ of gcc-4_0-branch and gcc-4_0-rhl-branch is identical.
Then can Redhat's version.c updated to reflect that since it is annoying to have 4.0.1 seen when it is
really a 4.0.2 and I tested a pretty new 4.0.2 which is why I got this wrong.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (4 preceding siblings ...)
2005-09-02 13:11 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 13:13 ` pinskia at gcc dot gnu dot org
2005-09-02 13:20 ` jakub at gcc dot gnu dot org
` (17 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 13:13 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Known to work|4.0.0 |4.0.0 4.1.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (5 preceding siblings ...)
2005-09-02 13:13 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 13:20 ` jakub at gcc dot gnu dot org
2005-09-02 13:21 ` jakub at gcc dot gnu dot org
` (16 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-09-02 13:20 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From jakub at gcc dot gnu dot org 2005-09-02 13:19 -------
Well, it is not 4.0.2, as 4.0.2 has not been released. FSF version.c contains
prerelease string which somewhat explains that it is really not yet official
4.0.2, but we use the version also for rpm version where claiming the compiler is
4.0.2 would be misleading. It is something between 4.0.1 and 4.0.2.
For any RH version.c, the date printed is the date of merge from the
corresponding upstream gcc-X_Y-branch which is I guess the most important
info for you.
This bug is actually something I asked Caolan to file here, because I knew
there were no C++ changes between the 2 compilers where it broke other than
the changes brought from a new gcc-4_0-branch merge.
--
What |Removed |Added
----------------------------------------------------------------------------
Known to work|4.0.0 4.1.0 |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (6 preceding siblings ...)
2005-09-02 13:20 ` jakub at gcc dot gnu dot org
@ 2005-09-02 13:21 ` jakub at gcc dot gnu dot org
2005-09-02 13:23 ` jakub at gcc dot gnu dot org
` (15 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-09-02 13:21 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Known to work|4.0.0 |4.0.0 4.0.1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (7 preceding siblings ...)
2005-09-02 13:21 ` jakub at gcc dot gnu dot org
@ 2005-09-02 13:23 ` jakub at gcc dot gnu dot org
2005-09-02 13:30 ` pinskia at gcc dot gnu dot org
` (14 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: jakub at gcc dot gnu dot org @ 2005-09-02 13:23 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Known to work|4.0.0 4.0.1 |4.0.0 4.1.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (8 preceding siblings ...)
2005-09-02 13:23 ` jakub at gcc dot gnu dot org
@ 2005-09-02 13:30 ` pinskia at gcc dot gnu dot org
2005-09-02 13:41 ` pinskia at gcc dot gnu dot org
` (13 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 13:30 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 13:30 -------
(In reply to comment #5)
> Well, it is not 4.0.2, as 4.0.2 has not been released. FSF version.c contains
> prerelease string which somewhat explains that it is really not yet official
> 4.0.2, but we use the version also for rpm version where claiming the compiler is
> 4.0.2 would be misleading. It is something between 4.0.1 and 4.0.2.
> For any RH version.c, the date printed is the date of merge from the
> corresponding upstream gcc-X_Y-branch which is I guess the most important
> info for you.
Actually using 4.0.1 is more confusing to everyone or at least to me. The point is using 4.0.2 is like
everyone else does and for a reason. It is based off of a FSF CVS after 4.0.1 was released and not on
4.0.1 itself. Seeing 4.0.1 I just tested a 4.0.2 (from about a week or so ago) which I had lying around.
Just change it to 4.0.2 like everyone else and then when anyone sees 4.0.2, they will go and test a
recent 4.0.2 instead of a 4.0.2 which was a couple weeks old.
Anyways this is a discussion should really be internal to redhat since it was their fuck which made me
make the mistake.
--
What |Removed |Added
----------------------------------------------------------------------------
Known to work|4.0.0 4.1.0 |4.0.0 4.1.0 4.0.1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (9 preceding siblings ...)
2005-09-02 13:30 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 13:41 ` pinskia at gcc dot gnu dot org
2005-09-02 15:47 ` pinskia at gcc dot gnu dot org
` (12 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 13:41 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 13:41 -------
Anyways reducing.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (10 preceding siblings ...)
2005-09-02 13:41 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 15:47 ` pinskia at gcc dot gnu dot org
2005-09-02 16:40 ` pinskia at gcc dot gnu dot org
` (11 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 15:47 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 15:46 -------
I have to re-reduce this because I found a different bug as I reduced it too far, see PR 23698 for that
bug.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (11 preceding siblings ...)
2005-09-02 15:47 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 16:40 ` pinskia at gcc dot gnu dot org
2005-09-02 16:42 ` matz at suse dot de
` (10 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 16:40 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 16:39 -------
Hmm I think the reason why this is accepted on the mainline is the same reason why PR 23698 is
accepted.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (12 preceding siblings ...)
2005-09-02 16:40 ` pinskia at gcc dot gnu dot org
@ 2005-09-02 16:42 ` matz at suse dot de
2005-09-02 22:52 ` pinskia at gcc dot gnu dot org
` (9 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: matz at suse dot de @ 2005-09-02 16:42 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |matz at suse dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (13 preceding siblings ...)
2005-09-02 16:42 ` matz at suse dot de
@ 2005-09-02 22:52 ` pinskia at gcc dot gnu dot org
2005-09-07 20:03 ` bangerth at dealii dot org
` (8 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-02 22:52 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-02 22:51 -------
Confirmed and htere is the reduced testcase:
namespace std {
class type_info {
bool operator==(const type_info& __arg) const;
};
}
template <class T, T val> struct integral_constant {
static const T value = val;
};
template< typename T > struct is_integral : integral_constant<bool,false> {};
template <bool B> struct enable_if_c {};
template<typename Functor>
typename enable_if_c<(is_integral<Functor>::value)>::type
operator==(const int& f, Functor g);
template<class D>
int get_deleter( std::type_info const & ti )
{
return ti == typeid(D);
}
The different between this and PR 23698 is indirectness of value in is_integral, this one goes though a
base class while the other one does not. This test unlike the one in PR 23698 is accepted Comeau.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2005-09-02 22:51:51
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (14 preceding siblings ...)
2005-09-02 22:52 ` pinskia at gcc dot gnu dot org
@ 2005-09-07 20:03 ` bangerth at dealii dot org
2005-09-07 20:07 ` pinskia at gcc dot gnu dot org
` (7 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: bangerth at dealii dot org @ 2005-09-07 20:03 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From bangerth at dealii dot org 2005-09-07 20:03 -------
This is actually a duplicate of PR 23771. It compiles fine with 4.0.1pre
but doesn't anymore with today's 4.0.2pre.
W.
*** This bug has been marked as a duplicate of 23771 ***
--
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (15 preceding siblings ...)
2005-09-07 20:03 ` bangerth at dealii dot org
@ 2005-09-07 20:07 ` pinskia at gcc dot gnu dot org
2005-09-07 20:12 ` bangerth at dealii dot org
` (6 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-09-07 20:07 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-07 20:06 -------
(In reply to comment #11)
> This is actually a duplicate of PR 23771. It compiles fine with 4.0.1pre
> but doesn't anymore with today's 4.0.2pre.
Actually it is not really as this one works on the mainline.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|DUPLICATE |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (16 preceding siblings ...)
2005-09-07 20:07 ` pinskia at gcc dot gnu dot org
@ 2005-09-07 20:12 ` bangerth at dealii dot org
2005-09-08 16:51 ` bangerth at dealii dot org
` (5 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: bangerth at dealii dot org @ 2005-09-07 20:12 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |bangerth at dealii dot org
Last reconfirmed|2005-09-06 18:49:14 |2005-09-07 20:12:20
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (17 preceding siblings ...)
2005-09-07 20:12 ` bangerth at dealii dot org
@ 2005-09-08 16:51 ` bangerth at dealii dot org
2005-09-08 18:57 ` cvs-commit at gcc dot gnu dot org
` (4 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: bangerth at dealii dot org @ 2005-09-08 16:51 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |mmitchel at gcc dot gnu dot
|dot org |org
Status|REOPENED |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (18 preceding siblings ...)
2005-09-08 16:51 ` bangerth at dealii dot org
@ 2005-09-08 18:57 ` cvs-commit at gcc dot gnu dot org
2005-09-08 19:00 ` cvs-commit at gcc dot gnu dot org
` (3 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-09-08 18:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-09-08 18:57 -------
Subject: Bug 23691
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: mmitchel@gcc.gnu.org 2005-09-08 18:56:50
Modified files:
gcc/cp : ChangeLog decl2.c
gcc/testsuite : ChangeLog
Log message:
PR c++/23691
* decl2.c (mark_used): Instantiate static data members initialized
by constants, even in a template.
PR c++/23691
* g++.dg/template/static16.C: New test.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.4878&r2=1.4879
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl2.c.diff?cvsroot=gcc&r1=1.797&r2=1.798
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.6031&r2=1.6032
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (19 preceding siblings ...)
2005-09-08 18:57 ` cvs-commit at gcc dot gnu dot org
@ 2005-09-08 19:00 ` cvs-commit at gcc dot gnu dot org
2005-09-08 19:02 ` mmitchel at gcc dot gnu dot org
` (2 subsequent siblings)
23 siblings, 0 replies; 25+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-09-08 19:00 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-09-08 18:59 -------
Subject: Bug 23691
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-4_0-branch
Changes by: mmitchel@gcc.gnu.org 2005-09-08 18:58:38
Modified files:
gcc/cp : ChangeLog decl2.c
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/g++.dg/template: static16.C
Log message:
PR c++/23691
* decl2.c (mark_used): Instantiate static data members initialized
by constants, even in a template.
PR c++/23691
* g++.dg/template/static16.C: New test.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.4648.2.95&r2=1.4648.2.96
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/decl2.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.770.2.5&r2=1.770.2.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.5084.2.390&r2=1.5084.2.391
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/static16.C.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (20 preceding siblings ...)
2005-09-08 19:00 ` cvs-commit at gcc dot gnu dot org
@ 2005-09-08 19:02 ` mmitchel at gcc dot gnu dot org
2005-09-08 19:04 ` mmitchel at gcc dot gnu dot org
2005-09-12 19:01 ` cvs-commit at gcc dot gnu dot org
23 siblings, 0 replies; 25+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-09-08 19:02 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From mmitchel at gcc dot gnu dot org 2005-09-08 19:01 -------
Fixed in 4.0.2.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (21 preceding siblings ...)
2005-09-08 19:02 ` mmitchel at gcc dot gnu dot org
@ 2005-09-08 19:04 ` mmitchel at gcc dot gnu dot org
2005-09-12 19:01 ` cvs-commit at gcc dot gnu dot org
23 siblings, 0 replies; 25+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-09-08 19:04 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From mmitchel at gcc dot gnu dot org 2005-09-08 19:03 -------
*** Bug 23771 has been marked as a duplicate of this bug. ***
--
Bug 23691 depends on bug 23771, which changed state.
Bug 23771 Summary: [4.0/4.1 regression] Constant template argument not recognized as such
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23771
What |Old Value |New Value
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |DUPLICATE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
* [Bug c++/23691] [4.0 Regression] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' because it is a non-constant expression
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
` (22 preceding siblings ...)
2005-09-08 19:04 ` mmitchel at gcc dot gnu dot org
@ 2005-09-12 19:01 ` cvs-commit at gcc dot gnu dot org
23 siblings, 0 replies; 25+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-09-12 19:01 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-09-12 19:01 -------
Subject: Bug 23691
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: mmitchel@gcc.gnu.org 2005-09-12 19:00:57
Modified files:
gcc/testsuite : ChangeLog
Added files:
gcc/testsuite/g++.dg/template: static16.C
Log message:
PR c++/23691
* g++.dg/template/static16.C: New test.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.6048&r2=1.6049
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/static16.C.diff?cvsroot=gcc&r1=1.1&r2=1.2
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23691
^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2005-09-12 19:01 UTC | newest]
Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-09-02 9:01 [Bug c++/23691] New: âmpl_::bool_<false>::valueâ is not a valid template argument for type âboolâ because it is a non-constant expression caolanm at redhat dot com
2005-09-02 9:05 ` [Bug c++/23691] " caolanm at redhat dot com
2005-09-02 12:02 ` pinskia at gcc dot gnu dot org
2005-09-02 13:05 ` [Bug c++/23691] `mpl_::bool_<false>::value' is not a valid template argument for type `bool' " jakub at gcc dot gnu dot org
2005-09-02 13:07 ` [Bug c++/23691] [4.0 Regression] " pinskia at gcc dot gnu dot org
2005-09-02 13:11 ` pinskia at gcc dot gnu dot org
2005-09-02 13:13 ` pinskia at gcc dot gnu dot org
2005-09-02 13:20 ` jakub at gcc dot gnu dot org
2005-09-02 13:21 ` jakub at gcc dot gnu dot org
2005-09-02 13:23 ` jakub at gcc dot gnu dot org
2005-09-02 13:30 ` pinskia at gcc dot gnu dot org
2005-09-02 13:41 ` pinskia at gcc dot gnu dot org
2005-09-02 15:47 ` pinskia at gcc dot gnu dot org
2005-09-02 16:40 ` pinskia at gcc dot gnu dot org
2005-09-02 16:42 ` matz at suse dot de
2005-09-02 22:52 ` pinskia at gcc dot gnu dot org
2005-09-07 20:03 ` bangerth at dealii dot org
2005-09-07 20:07 ` pinskia at gcc dot gnu dot org
2005-09-07 20:12 ` bangerth at dealii dot org
2005-09-08 16:51 ` bangerth at dealii dot org
2005-09-08 18:57 ` cvs-commit at gcc dot gnu dot org
2005-09-08 19:00 ` cvs-commit at gcc dot gnu dot org
2005-09-08 19:02 ` mmitchel at gcc dot gnu dot org
2005-09-08 19:04 ` mmitchel at gcc dot gnu dot org
2005-09-12 19:01 ` cvs-commit at gcc dot gnu dot 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).