AMD64 - kdo doda HW?
Miloslav Trmac
mitr na volny.cz
Čtvrtek Listopad 27 08:27:47 CET 2003
On Thu, Nov 27, 2003 at 07:58:32AM +0100, Pavel Janoušek wrote:
> char *p = malloc ((size_t) SIZE);
>
> Vidite tam nejakou chybu pri prekladu?
Vidim tam zbytecny cast. Coz je v tuto chvili podstatne, protoze cast na
unsigned typ ma definovanou semantiku, _nikdy_ nedojde k "preteceni"
a kompilator ma o duvod navic zadny warning nevypsat.
> A to jsem zapnul vsechny potencialni warningy...
Zdaleka ne. Prinejmensim -W a zhruba 10 dalsich prepinacu.
> - proste kompilator je HAPPY
|[trmac na chrys trmac]$ gcc --version
|gcc (GCC) 3.3.2 20031022 (Red Hat Linux 3.3.2-1)
<SNIP>
| [trmac na chrys trmac]$ gcc -Wall x.c
| x.c: In function `main':
| x.c:10: warning: integer constant is too large for "long" type
| x.c:10: warning: large integer implicitly truncated to unsigned type
(Tohle varovani se objevi jen po odstraneni castu)
| x.c:12: warning: integer constant is too large for "long" type
| x.c:13: warning: integer constant is too large for "long" type
Mirek
Další informace o konferenci Linux