Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: thakis at chromium dot org
Target Milestone: ---
codecvt.cpp has this snippet:
if (read_utf16_bom(from, mode) == little_endian)
mode = codecvt_mode(mode & little_endian);
That probably should
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64816
--- Comment #1 from thakis at chromium dot org ---
(Here's a patch with a libc++-side workaround: http://reviews.llvm.org/D7201
But it'd be good to fix this in the compiler too, of course.)
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: thakis at chromium dot org
I came across this while trying to build chromium for android with libc++ and
gcc. Here's an attempt at a reduction:
$ cat repro2.cc
namespace std
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: thakis at chromium dot org
$ cat test2.cc
typedef char YesType;
struct NoType { YesType dummy[2]; };
template typename T
struct ShouldAbortOnSelfReset
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63872
--- Comment #2 from thakis at chromium dot org ---
I think warning on unused typedefs in local classes is generally a useful
feature, not a bug. The bug here is that it's warning on a typedef in a local
class that is being used.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61596
--- Comment #2 from thakis at chromium dot org ---
Here's a similar example that doesn't need C++1y, regular C++11 is sufficient:
thakis@ubu:~$ cat test.cc
template class T
void template_fun(T t) {
typename T::Foo s3foo; // YYY
(void)s3foo
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: thakis at chromium dot org
-Wunused-local-typedefs warns that the typedef in line XXX is unused, but
it's used in line YYY:
auto f() {
struct S {
typedef int t
Priority: P3
Component: preprocessor
Assignee: unassigned at gcc dot gnu.org
Reporter: thakis at chromium dot org
Actual:
$ cat test.cc
int main() {
return _Pragma(message \hello\) 1234;
}
$ ~/gcc482prefix/bin/gcc -c test.cc -Wall
test.cc: In function ‘int main
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60875
--- Comment #2 from thakis at chromium dot org ---
That only works on declarations, not in an expression, right?
(We do have a workaround that works with gcc. But pragma message matches the
semantics of what we want to do, and it works with MSVC
: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: thakis at chromium dot org
This compiles, but shouldn't:
$ cat gcc4.8bug.cc
// builds with gcc4.8, but shouldn't
namespace std {
int* begin(int i) { return (int*)0; }
int* end
10 matches
Mail list logo