Hey all,
Its time for the biannual post about type-punned pointers. The good news is that in 0.41.4, it seems that Pd itself no longer as any type- punned pointers that gcc auto-vectorizer complains about! The bad news is that there are still a handful of externals that do. I'd happily fix them if I know how, but C pointer tricks are my weak point.
Here is a list of all the spots in question, generated by this script:
grep type-punned 2009-01-21_11.57.09_darwin_macosx104-i386_pd- extended_run-automated-builder.txt | sort -u | sed 's|: warning.*||' | sed 's|^sickle|trunk/externals/miXed/cyclone/sickle|'| sed 's|/Users/ pd/auto-build/pd-extended|trunk|'
trunk/externals/miXed/shared/common/binport.c:516 trunk/externals/bsaylor/svf~.c:59 trunk/externals/iem/iem_spec2/src/spec2_sqrt~.c:28 trunk/externals/iem/iem_tab/src/tab_sqrt.c:25 trunk/externals/iemlib/iemlib1/src/filter~.c:646 trunk/externals/iemlib/iemlib1/src/filter~.c:648 trunk/externals/iemlib/iemlib1/src/filter~.c:701 trunk/externals/iemlib/iemlib1/src/filter~.c:729 trunk/externals/iemlib/iemlib1/src/filter~.c:769 trunk/externals/iemlib/iemlib1/src/hml_shelf~.c:279 trunk/externals/iemlib/iemlib1/src/hml_shelf~.c:281 trunk/externals/iemlib/iemlib1/src/hml_shelf~.c:336 trunk/externals/iemlib/iemlib1/src/iem_sqrt4~.c:77 trunk/externals/iemlib/iemlib1/src/lp1_t~.c:109 trunk/externals/iemlib/iemlib1/src/lp1_t~.c:71 trunk/externals/iemlib/iemlib1/src/para_bp2~.c:171 trunk/externals/iemlib/iemlib1/src/para_bp2~.c:173 trunk/externals/iemlib/iemlib1/src/para_bp2~.c:226 trunk/externals/iemlib/iemlib1/src/peakenv_hold~.c:81 trunk/externals/iemlib/iemlib1/src/peakenv~.c:58 trunk/externals/iemlib/iemlib1/src/prvu~.c:186 trunk/externals/iemlib/iemlib1/src/rvu~.c:115 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:106 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:108 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:161 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:163 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:216 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:218 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:271 trunk/externals/iemlib/iemlib1/src/vcf_filter~.c:273 trunk/externals/moonlib/readsfv~.c:658 trunk/externals/moonlib/readsfv~.c:669 trunk/externals/sigpack/source/freqshift~.c:105 trunk/externals/miXed/cyclone/sickle/Line.c:73 trunk/externals/miXed/cyclone/sickle/bitand.c:39 trunk/externals/miXed/cyclone/sickle/bitand.c:56 trunk/externals/miXed/cyclone/sickle/bitand.c:89 trunk/externals/miXed/cyclone/sickle/bitnot.c:33 trunk/externals/miXed/cyclone/sickle/bitor.c:39 trunk/externals/miXed/cyclone/sickle/bitor.c:56 trunk/externals/miXed/cyclone/sickle/bitor.c:89 trunk/externals/miXed/cyclone/sickle/bitshift.c:49 trunk/externals/miXed/cyclone/sickle/bitshift.c:65 trunk/externals/miXed/cyclone/sickle/bitxor.c:39 trunk/externals/miXed/cyclone/sickle/bitxor.c:56 trunk/externals/miXed/cyclone/sickle/bitxor.c:89 trunk/externals/miXed/cyclone/sickle/curve.c:103 trunk/externals/miXed/cyclone/sickle/lores.c:77 trunk/externals/miXed/cyclone/sickle/lores.c:78 trunk/externals/miXed/cyclone/sickle/onepole.c:101 trunk/externals/miXed/cyclone/sickle/rampsmooth.c:125 trunk/externals/miXed/cyclone/sickle/reson.c:85 trunk/externals/miXed/cyclone/sickle/reson.c:86 trunk/externals/miXed/cyclone/sickle/slide.c:52 trunk/externals/miXed/cyclone/sickle/svf.c:116 trunk/externals/miXed/cyclone/sickle/svf.c:117
----------------------------------------------------------------------------
"Free software means you control what your computer does. Non-free software means someone else controls that, and to some extent controls you." - Richard M. Stallman