From: Rustad, Mark D ... > >> static int smp_ah(struct crypto_blkcipher *tfm, const u8 irk[16], > >> const u8 r[3], u8 res[3]) > > > > Expect that it looks like you are passing arrays by value, > > but instead you are passing by reference. > > > > Explicitly pass by reference and sizeof works. > > It depends on what you mean by works. It at least doesn't look so misleading > when passing by reference > and so works more as expected. The sizeof in either case will never return > the size of the array. To > have sizeof return the size of the array would require a typedef of the array > to pass by reference. In > some cases that could be the right thing to do.
Feed: int bar(int (*f)[10]) { return sizeof *f; } into cc -O2 -S and look at the generated code - returns 40 not 4. David -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html