On Friday 07 November 2008 11:19, you wrote:
At Fri, 7 Nov 2008 10:32:22 +0000,
Alan Horstmann wrote:
On Friday 07 November 2008 09:58, you wrote:
At Fri, 7 Nov 2008 08:52:43 +0000,
Alan Horstmann wrote:
The code I am working with at present includes unremarkable lines such as:
snd_ctl_elem_value_t *line_in_vol; snd_ctl_elem_value_alloca(&line_in_vol);
Building this with a cross compiler for arm based on gcc 4.2.1 gives this
warning for the 2nd line: : warning: the address of 'line_in_vol' will always evaluate as : 'true'
but an older compiler on the desktop does not show this. Would this warning be expected in these circumstances, or is the compiler being over zealous? Am I missing something or is there a straightforward way to avoid such warnings? (Code runs OK).
Try the later version of alsa-lib. This should have been already fixed.
Thanks very much. You presumably refer to:
http:// git.alsa-project.org/?p=alsa-lib.git;a=commit;h=68e5771a6f7a2aae2dbd02a09 7719bcd25c6f307
Right now a rebuild of the working environment would be a bit tricky. At the next opportunity I'll see if we can apply that patch to alsa-lib (I think it is 1.0.15 -based) and rebuild. In the meantime the warnings are presumably fairly harmless?
Yes. It's just a noise and can be safely ignored.
Sorry if I'm making unnecesssary noise also!
Actually, on reflection I realised that as they are just macros in the header files, and are therefore not part of the embedded alsa-lib (which I cannot change straight away) I hand edited the include/alsa/control.h, adding the helper function locally & substituting the _alloca(..) macros...
...compiler now silent. Much thanks for your assistance.
Alan