[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
slk_attr_off and on macros
From: |
Jim Idle |
Subject: |
slk_attr_off and on macros |
Date: |
Wed, 17 Mar 2004 08:21:05 -0800 |
When building with widec options, ncurses 5.4, latest patches (but the very
latest one), the slk_attr macros are defined as:
/*
* Some wide-character functions do not depend on the extensions.
*/
#define slk_attr_off(a,v) ((v) ? ERR : slk_attroff(a))
#define slk_attr_on(a,v) ((v) ? ERR : slk_attron(a))
If one then uses them in this manner:
retcode = slk_attr_off(attr, (void *)NULL);
Which seems to be what the standards require, then the macros cause slightly
annoying warnings to be generated with some compilers, such as xlc_r on AIX:
xlc_r softkeys.c
"softkeys.c", line 37.19: 1506-425 (I) The condition is always false.
"softkeys.c", line 71.19: 1506-425 (I) The condition is always false.
I guess that the macro is trying to prevent people passing in values other then
a NULL pointer of course. This warning can be turned off with the appropriate
#pragma, but perhaps taking out the test and just throwing away the v parameter
would be better?
I can see why it was done like this, and it makes sense to have done it, but
perhaps we can rely on the programmer passing in NULL as per the specs? Hmm,
relying on other programmers to do the right thing... ;-)
Jim Idle
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.618 / Virus Database: 397 - Release Date: 3/9/2004
- slk_attr_off and on macros,
Jim Idle <=