[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Drivemap module
From: |
Colin D Bennett |
Subject: |
Re: [PATCH] Drivemap module |
Date: |
Tue, 5 Aug 2008 10:15:53 -0700 |
On Tue, 05 Aug 2008 01:10:25 +0200
Javier Martín <address@hidden> wrote:
> Besides, sometimes checks like "if (a=b)", or more
> frequently "if (a=f())" are intentionally used in C, so the error
> might become even more difficult to spot and correct.
Respect and heed the gcc warnings!!
Note that gcc will warn you (you *are* using -Wall, at least, right?)
if you try to do
if (a = b)
but if you really mean it, you should surround the expression with an
extra pair of parentheses:
if ((a = b))
Use of the value of an assignment in an expression is common in code
like
if ((n = read (fd, buf, sz)) > 0)
/* ... use the data in buf ... */
Here's an example showing gcc being helpful:
$ cat a.c
int f()
{
int a = 1;
int b;
if ((b = a))
return 1;
return 0;
}
$ cat b.c
int f()
{
int a = 1;
int b;
if (b = a)
return 1;
return 0;
}
$ gcc -Wall -c a.c
$ gcc -Wall -c b.c
b.c: In function ‘f’:
b.c:5: warning: suggest parentheses around assignment used as truth
$
> New version of the patch follows. I must say that the discussion here
> has become pretty interesting without degrading into flamewarring -
> who whats to call Mr. Torvalds and Prof. Tanembaum? ^^
Well, it sounds to me like you are trying your best to set Marco ablaze,
but he is delightfully fire-retardant.
Regards,
Colin
- Re: [PATCH] Drivemap module, (continued)
- Re: [PATCH] Drivemap module, Javier Martín, 2008/08/13
- Re: [PATCH] Drivemap module, Robert Millan, 2008/08/13
- Re: [PATCH] Drivemap module, Javier Martín, 2008/08/13
- Re: [PATCH] Drivemap module, Marco Gerards, 2008/08/13
- Re: [PATCH] Drivemap module, Robert Millan, 2008/08/13
- Re: [PATCH] Drivemap module, Marco Gerards, 2008/08/13
- Re: [PATCH] Drivemap module, Javier Martín, 2008/08/13
- Re: [PATCH] Drivemap module, Marco Gerards, 2008/08/14
- Re: [PATCH] Drivemap module, Javier Martín, 2008/08/14
- Re: [PATCH] Drivemap module, Robert Millan, 2008/08/13
- Re: [PATCH] Drivemap module,
Colin D Bennett <=
Re: [PATCH] Drivemap module, Viswesh S, 2008/08/06
Re: [PATCH] Drivemap module, Viswesh S, 2008/08/07
Re: [PATCH] Drivemap module, Viswesh S, 2008/08/08