This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/36042] New: cast from "const void *" into "void *" produces a warning
- From: "nenad at intrepid dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 25 Apr 2008 04:29:13 -0000
- Subject: [Bug c/36042] New: cast from "const void *" into "void *" produces a warning
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
I created the following test code:
int x;
inline myfun (void*m)
{
x = *(int *)m;
}
int
bar (const void *p)
{
myfun ((void *)p);
}
If I compile it as:
gcc -c test.c
I don't get a warning. However:
gcc -O -c test.c
produces the following:
test.c: In function ?bar?:
test.c:9: warning: passing argument 1 of ?myfun? discards qualifiers from
pointer target type
It seems that this error is affected by inlining of myfun. I checked the gcc
head version and warning does not appear there. 4.1.2 also does not have it.
--
Summary: cast from "const void *" into "void *" produces a
warning
Product: gcc
Version: 4.2.3
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: nenad at intrepid dot com
GCC build triplet: x86_64-unknown-linux-gnu
GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36042