https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71077
--- Comment #6 from patrick at parcs dot ath.cx ---
On Fri, 12 Aug 2016, ysrumyan at gmail dot com wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71077
>
> Yuri Rumyantsev changed:
>
>W
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66454
--- Comment #2 from patrick at parcs dot ath.cx ---
Created attachment 35712
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35712&action=edit
rough patch
Here is a rough patch of the aforementioned change -- to look at the column
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66454
--- Comment #1 from patrick at parcs dot ath.cx ---
We suppress the warning for
int *p;
void
foo (int n)
{
if (p)
foo (1);
else // guard token
if (p) // body token
foo (2);
foo (3); // next
: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
Target Milestone: ---
The following test case is a template exhibiting the kind of code in the Linux
kernel that often triggers a -Wmisleading
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61144
patrick at parcs dot ath.cx changed:
What|Removed |Added
CC||patrick at parcs dot ath.cx
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
If a function is known to not clobber an argument register then the caller
shouldn't have to save/reload that reg
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61112
--- Comment #2 from patrick at parcs dot ath.cx ---
Relevant contents of -fdump-tree-uninit:
[WORKLIST]: Update worklist with phi: w_2 = PHI
[CHECK]: examining phi: w_2 = PHI
[CHECK] Found def edge 1 in w_1 = PHI
[CHECK] Found def edge 1 in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61112
--- Comment #1 from patrick at parcs dot ath.cx ---
$ gcc -O2 -Wall this.c
this.c: In function ‘void foo(int, int, int)’:
this.c:13:10: warning: ‘w’ may be used uninitialized in this function
[-Wmaybe-uninitialized]
p = w;
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
int p;
void
foo (int x, int y, int z)
{
int w;
if (x)
w = z;
if (y)
w = 10;
if (x || y)
p = w;
}
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60764
--- Comment #1 from patrick at parcs dot ath.cx ---
I will try to resolve this.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60765
--- Comment #2 from patrick at parcs dot ath.cx ---
I will try to resolve this.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60765
--- Comment #1 from patrick at parcs dot ath.cx ---
Oops, that warning is because I am currently compiling with G++ 4.8, which
doesn't implement returns_nonnull. Here's a better test case:
$ cat this.cc
struct Foo;
void foo
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
$ cat this.cc
struct Foo;
void foo (int& (Foo::*) () __attribute__ ((returns_nonnull)));
$ g++ this.cc -c
this.cc:4:55: warning: ‘returns_non
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
$ cat this.cc
struct Foo
{
Foo () __attribute__ ((nonnull(1)));
};
void
foo ()
{
Foo ();
}
$ g++ -Wnonnull -c this.cc
this.cc: In
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60565
--- Comment #4 from patrick at parcs dot ath.cx ---
(In reply to Jonathan Wakely from comment #3)
> (In reply to patrick from comment #1)
> > Er, sorry, the call to "foo ()" within main ought to be "B::foo ()".
>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60565
--- Comment #1 from patrick at parcs dot ath.cx ---
Er, sorry, the call to "foo ()" within main ought to be "B::foo ()".
: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
The following file fails to compile due to a bogus not-in-scope error for
B::foo ():
namespace A
{
extern "C" void foo () throw ();
}
namespace B
{
extern "C" void foo ();
}
int
main ()
{
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53711
patrick at parcs dot ath.cx changed:
What|Removed |Added
CC||patrick at parcs dot ath.cx
: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: patrick at parcs dot ath.cx
In the following testcase
void bar (void);
void baz (int *);
void
foo (void)
{
int x;
x = 5;
bar ();
x += 10;
baz (&a
19 matches
Mail list logo