preprocessed source at: http://www.cg.tuwien.ac.at/~icicle/gcc/ActionsForPolarisationImages.mi
complete output: .m.o: ActionsForPolarisationImages Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: ../gcc-4.1.2/configure --enable-languages=c,objc --prefix=/home/icicle/gcc4 --enable-shared --enable-threads=posix Thread model: posix gcc version 4.1.2 /home/icicle/gcc4/libexec/gcc/x86_64-unknown-linux-gnu/4.1.2/cc1obj -E -quiet -v -I/home/icicle/ART/include -DAMS_CONFIG="amd64--linux-gcc" -D_GNU_OBJC_RUNTIME_ -DLINUX -D_64_BIT_LONG_ -DBROKEN_64BIT_VARARG_TERMINATION -DAMS_Spectrum16 -DNORMAL -D_ART_WITHOUT_OPENGL_ -D_ART_WITHOUT_JPEGLIB_ /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m -mtune=k8 -std=gnu99 -Wall -Wwrite-strings -Wno-import -Wno-strict-aliasing -fomit-frame-pointer -fworking-directory -O3 -fpch-preprocess -o ActionsForPolarisationImages.mi ignoring nonexistent directory "/home/icicle/gcc4/lib/gcc/x86_64-unknown-linux-gnu/4.1.2/../../../../x86_64-unknown-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /home/icicle/ART/include /usr/local/include /home/icicle/gcc4/include /home/icicle/gcc4/lib/gcc/x86_64-unknown-linux-gnu/4.1.2/include /usr/include End of search list. /home/icicle/gcc4/libexec/gcc/x86_64-unknown-linux-gnu/4.1.2/cc1obj -fpreprocessed ActionsForPolarisationImages.mi -quiet -dumpbase ActionsForPolarisationImages.m -mtune=k8 -auxbase-strip ./amd64--linux-gcc/Spectrum16/normal/ActionsForPolarisationImages.o -g -O3 -Wall -Wwrite-strings -Wno-import -Wno-strict-aliasing -std=gnu99 -version -fomit-frame-pointer -o ActionsForPolarisationImages.s GNU Objective-C version 4.1.2 (x86_64-unknown-linux-gnu) compiled by GNU C version 4.1.2. GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 2a5baba627e461e0ff2f208acc682c91 /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m: In function -[ArnARTRAWLinearPolarisingFilter performOn::]: /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m:220: warning: -beginAction:: not found in protocol(s) /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m:221: warning: -endAction not found in protocol(s) /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m: In function -[ArnARTRAWPolarisationFalseColour performOn::]: /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m:469: warning: -beginAction:: not found in protocol(s) /home/icicle/ART/Libs/Image/ActionsForPolarisationImages.m:470: warning: -endAction not found in protocol(s) as -V -Qy -o ./amd64--linux-gcc/Spectrum16/normal/ActionsForPolarisationImages.o ActionsForPolarisationImages.s GNU assembler version 2.16.91.0.2 (x86_64-suse-linux) using BFD version 2.16.91.0.2 20050720 (SuSE Linux) - (void) performOn : (struct ArNodeTable *) nodeStack : (const ArExecEnv *) ee { [ (*ee).reporter beginAction : 1 : "(polarising filter: non-polarising " "engine, skipped)" ]; [ (*ee).reporter endAction ]; } The "not found in protocol(s)" warnings are bogus, since (*ee).reporter, which is of type "id <ArpReporter>", conforms to the ArpReporter protocol which defines the methods beginAction and endAction. If I change - (void) performOn : (struct ArNodeTable *) nodeStack : (const ArExecEnv *) ee to - (void) performOn : (struct ArNodeTable *) nodeStack : (ArExecEnv *) ee the warnings vanish. -- Summary: objc bogus warning when using const Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: objc AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: icicle at cg dot tuwien dot ac dot at GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31056