Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: tomaszkam at gmail dot com
Created attachment 30460
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30460&action=edit
Bugus code exmaple
The class template specialization for member p
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57825
--- Comment #2 from Tomasz Kamiński ---
Propably this is also causing the problem with the standard library is_function
and is_member function traits, because they cannot be implemented correclty.
Example:
struct A
{
void f_n() {}
void f_l()
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57825
--- Comment #7 from Tomasz Kamiński ---
> No, this was a different problem and it became fixed. Your example code
> works fine gcc 4.9.0 20130616 (experimental) (I do know this, because I
> recently completed the implementation of std::function fo
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66139
--- Comment #2 from Tomasz Kamiński ---
Example of some real life safe-code (now raw allocations, STL container used),
that is leaking:
#include
#include
#include
using namespace std;
struct Test {
string a;
string b;
};
Test make_
: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: tomaszkam at gmail dot com
Target Milestone: ---
The following code does not compile:
#include
struct NonTransferable
{
NonTransferable(int
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77976
Tomasz Kamiński changed:
What|Removed |Added
CC||tomaszkam at gmail dot com
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: tomaszkam at gmail dot com
Target Milestone: ---
The 20.14.6 [comparisons] p14:
For templates greater, less, greater_equal, and less_equal, the specializations
for any pointer type yield a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78420
--- Comment #1 from Tomasz Kamiński ---
This is probably effect on changing !lt(a,b) && !lt(b, a) into !(a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78420
--- Comment #3 from Tomasz Kamiński ---
> I don't see this as prohibiting the transformation. The standard seems to be
> saying that they might or might not compare as equal, which presumably
> depends on how variables are laid out in memory.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78420
--- Comment #4 from Tomasz Kamiński ---
Oh, you mean that compiler is not allowed to turn comparison of p == b into
false at compile time, using 5.10 [expr.eq] p2.1?
Some reference from clang: https://llvm.org/bugs/show_bug.cgi?id=13507. Note
t
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78420
--- Comment #7 from Tomasz Kamiński ---
> No, it's very much allowed to do that. But I'm skeptical that it's allowed
> to turn !(a{}(a,b) && !std::less(b,a)
being false, when std::less{}(a,b) and std::less{}(b,a) are both false,
and in contrast
: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: tomaszkam at gmail dot com
For the following code:
struct bool_convert
{
explicit operator bool() { return true; }
};
bool x(bool_convert());//1
bool x1{bool_convert
++
Assignee: unassigned at gcc dot gnu.org
Reporter: tomaszkam at gmail dot com
Target Milestone: ---
According to the
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4529.html#func.not_fn
the following invocations not_fn(f)(args...) and !INVOKE(f, args...) (in case
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66998
--- Comment #2 from Tomasz Kamiński ---
Sorry for missing using declaration.
> It's certainly a nice QoI improvement. I was basically lazy when I
> implemented it and used decltype(auto) because it's convenient.
Yes, the decltype(auto) is con
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: tomaszkam at gmail dot com
Target Milestone: ---
Following class correctly compiles without any error in GCC 5.1.0:
struct NonTemplate
{
typedef void type();
type operator
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71886
--- Comment #1 from Tomasz Kamiński ---
Such code is useful, for example in case of variant universal
constructor from U&&, where there is a need to determine best candidate among
the function taking parameter each type be value.
This may be imp
16 matches
Mail list logo