Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider this C code:
struct foo {
int x, y;
};
extern int x, y;
struct foo f(void
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64-pc-linux-gnu
Consider this C code:
#include
atomic_bool b;
atomic_char c;
_Bool b2;
void f1(void) {
b
words: rejects-valid
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
The C++17 standard says "A program that jumps from a point where a var
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102442
Joseph C. Sible changed:
What|Removed |Added
CC||josephcsible at gmail dot com
Keywords: diagnostic
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider this C++ code:
struct foo *x;
void (foo::*myfuncptr)();
void f
: gcc
Version: 11.1.0
Status: UNCONFIRMED
Keywords: missed-optimization
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Mile
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider this C code:
typedef struct {
int x[1];
} foo;
foo f(void);
int g(void) {
int *p = f
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100861
--- Comment #2 from Joseph C. Sible ---
Wait, if it's just checking whether the calls to operator new and operator
delete match up, then why does adding "virtual ~Widget() {}" make the warning
go away?
: diagnostic
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Currently, code like "Base *b = new Derived; delete b;" gives a
-Wmismatched-new-dele
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91859
--- Comment #5 from Joseph C. Sible ---
The real problem mentioned in comment 2 still happens as of GCC 11.1. I've
narrowed it down somewhat to the optimization flags "-Og -ftree-dse
-ftree-pta". Removing any one of those will make it behave agai
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider these 4 attempts at declaring a function:
void f1(int rows, int cols, int arr[rows][cols]);
void f2(int rows, int cols, int
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96468
--- Comment #5 from Joseph C. Sible ---
I didn't have termination checking in mind at all for this. I envisioned the
warning triggering any time a "while" loop's body was just a semicolon, when
the "while" isn't the first statement in its block.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96468
--- Comment #3 from Joseph C. Sible ---
I didn't intend to restrict this to only volatile control variables. If you
have "_Bool canMoveOn(void);", I'd like "while(!canMoveOn());" in place of
"while(!signaled);" to warn too for the exact same reas
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider this C code:
typedef int sig_atomic_t;
volatile sig_atomic_t signaled;
_Bool getX(int *);
void
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95750
Joseph C. Sible changed:
What|Removed |Added
CC||josephcsible at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3507
Joseph C. Sible changed:
What|Removed |Added
CC||josephcsible at gmail dot com
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64-linux-gnu
Consider this C code:
unsigned f(unsigned x, unsigned y) {
if
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96235
Joseph C. Sible changed:
What|Removed |Added
CC||josephcsible at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96245
Joseph C. Sible changed:
What|Removed |Added
CC||josephcsible at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96062
--- Comment #2 from Joseph C. Sible ---
(In reply to Uroš Bizjak from comment #1)
> Just declare "_Bool carry". There is no need for int.
While that indeed makes my first suggestion happen, it feels unsatisfying that
doing so is necessary. Isn't
: missed-optimization
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64
Consider this C code:
long ps4_syscall0(long n
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96040
--- Comment #2 from Joseph C. Sible ---
Andrew Gierth posted this to the Lua mailing list:
> I think I see what's happening here, but I don't think I have an account
> on the gcc bug tracker to post it there (feel free to forward this).
> It's n
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64-linux-gnu
Consider this C code:
int puts(const char *);
int snprintf(char *, unsigned long, const char *, ...);
unsigned long
: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64-linux-gnu
Consider this C code:
extern struct foo {
long x, y, z;
} s;
void f(struct
-optimization, ssemmx
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64-linux-gnu
Consider this C code:
void f(void) {
__asm__
: missed-optimization
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64-linux-gnu
Consider this C code:
void g(long
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95732
--- Comment #1 from Joseph C. Sible ---
Thinking about this a bit more, it's a win for performance even if we ignore
CET completely. In particular, it would let a single binary use retpolines only
on CPUs that have the Spectre vulnerabilities tha
: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Target: x86_64
The thunks generated by -mindirect-branch and -mfunction-return
: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
When GCC does division-by-multiplication, it seems to forget that
multiplication is commutative. It moves the
Keywords: missed-optimization
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider this code, compiled at -O3:
extern int e;
void
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95121
--- Comment #3 from Joseph C. Sible ---
Also, is that documented to work that way anywhere? I didn't notice anything in
the manual to that effect.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95121
--- Comment #2 from Joseph C. Sible ---
Does this mean that Clang is wrong, then? Because it works the way I
wanted/expected.
Version: 10.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: inline-asm
Assignee: unassigned at gcc dot gnu.org
Reporter: josephcsible at gmail dot com
Target Milestone: ---
Consider this function:
char f(void
33 matches
Mail list logo