[pso] [tema3] warning-uri

Lucian Adrian Grijincu lucian.grijincu at gmail.com
Thu May 10 01:25:48 EEST 2007


Aliniamentul ar fi o chestie.
pe unele procesoare, accesul la int, long etc trebuie facut prin o
adresa care e multiplu de sizeof(int), respectiv sizeof(long).
Pentru struct-uri as presupune ca adresa trebuie sa fie multiplu de
cel mai mare aliniament al unui membru al structurii respective.

Am o curiozitate (care vine din o presupunere asupra snippletului de
cod pe care l-ai prezentat).

Daca citesc de pe disc superblocul, pot sa fac conversie la struct
pitix_super_block sau terbuie sa copii elementele unul cate unul in
struct pitix_super_block ?

Intreb asta din cauza ca avem 7 campuri __u8 urmate de doua __u16.
compilatorul va adauga un membru anomim de un byte dupa  __u8
dzone_block; pentru a pozitiona __u16 bfree la o adresa
corespunzatoare.

On 5/10/07, omar Chouydary <chouydary at yahoo.com> wrote:
> Am facut tema3, si trece toate testele. La compilare insa am 2 warning-uri
> (o sa le explic mai jos) si la upload imi zice asa:
> -1: compilarea a produs 2 warning-uri
> Asta inseamna ca se scade 1 pct pt ca am 2 warninguri?
>
> Problema cu warning-urile (sunt de acelasi tip) este aici:
>
> ps = (struct pitix_super_bloc *) bh->b_data;
>
> unde:
>  -  ps este definit ca : struct pitix_super_block *ps;
> -   bh->b_data este definit ca:  char    *b_data; (definitia din
> buffer_head.h)
>
> Nu ma prind de ce nu pot sa fac un cast de la acest pointer din b_data catre
> cel din ps fara warning. Vreo idee? (In afara de -Wno sau ceva de genul
> asta)
>
> Omar.
>
>  ________________________________
> Ahhh...imagining that irresistible "new car" smell?
>  Check out new cars at Yahoo! Autos.
>
>
> _______________________________________________
> pso mailing list
> pso at cursuri.cs.pub.ro
> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso
>
>


More information about the pso mailing list