------- Comment #9 from t dot artem at mailcity dot com 2010-08-02 20:27 ------- The culprit is the ic_predict.c file. When I compile it with -fno-strict-aliasing (while everything else is being compiled with -fstrict-aliasing) libfaad works correctly.
These are the warnings which I get from GCC: ic_predict.c: In function 'flt_round': ic_predict.c:58: warning: dereferencing type-punned pointer will break strict-aliasing rules ic_predict.c:58: warning: dereferencing type-punned pointer will break strict-aliasing rules ic_predict.c:58: warning: dereferencing type-punned pointer will break strict-aliasing rules ic_predict.c:60: warning: dereferencing type-punned pointer will break strict-aliasing rules ic_predict.c: In function 'ic_prediction': ic_predict.c:78: warning: dereferencing pointer 'tmp' does break strict-aliasing rules ic_predict.c:77: note: initialized from here ic_predict.c:78: warning: dereferencing pointer 'tmp' does break strict-aliasing rules ic_predict.c:77: note: initialized from here ic_predict.c:78: warning: dereferencing pointer 'tmp' does break strict-aliasing rules ic_predict.c:77: note: initialized from here ic_predict.c:78: warning: dereferencing pointer 'tmp' does break strict-aliasing rules ic_predict.c:77: note: initialized from here ic_predict.c:78: warning: dereferencing pointer 'tmp' does break strict-aliasing rules ic_predict.c:77: note: initialized from here ic_predict.c:78: warning: dereferencing pointer 'tmp' does break strict-aliasing rules ic_predict.c:77: note: initialized from here Maybe GCC developers could devise a patch for this file because http://www.audiocoding.com/faad2.html site seems to be dead. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45160