[Vm-dev] limiting compiler warnings...

Igor Stasenko siguctua at gmail.com
Wed Mar 21 02:18:58 UTC 2012


On 21 March 2012 01:38, Eliot Miranda <eliot.miranda at gmail.com> wrote:
>
>
>
> On Tue, Mar 20, 2012 at 2:30 PM, Camillo Bruni <camillo.bruni at inria.fr> wrote:
>>
>>
>>
>> On 2012-03-20, at 20:11, Eliot Miranda wrote:
>>
>> > Hi Camillo,
>> >
>> > On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <camillo.bruni at inria.fr> wrote:
>> >
>> > I am quickly trying to limit the number of warnings we get when compiling cog.
>> >
>> > The current output is amazingly verbose, and utterly useless when looking for possible bugs :/.
>> > Furthermore it seems that cared about the following warning:
>> >
>> > /Users/cami-data/education/phd/project/cog/dh83s-blessed/src/vm/gcc3x-cointerp.c:2066: warning: passing argument 1 of ‘longAt’ makes integer from pointer without a cast
>> >
>> > what would be the easiest way to introduce an auto-cast for longAt and family?
>> > I think the easiest solution would be to reintroduce the macros that are currently disabled, no?
>> >
>> > This doesn't seem right to me.  I've attached the warnings I get when I compile Cog with gcc 4.2.1 (on Mac OS X).  There are 39 lines for about 20 warnings.  The unique warnings are
>> >
>> > "bytecodeSetSelector" redefined
>> > assignment makes integer from pointer without a cast
>> > format '%ld' expects type 'long int', but argument 2 has type 'sqInt'
>> > ignoring asm-specifier for non-static local variable 'currentBytecode'
>> > ignoring asm-specifier for non-static local variable 'localIP'
>> > ignoring asm-specifier for non-static local variable 'localSP'
>> > initialization from incompatible pointer type
>> > left shift count >= width of type
>> > passing argument 1 of 'printHex' makes integer from pointer without a cast
>> > passing argument 2 of 'sqAllocateMemoryMac' makes pointer from integer without a cast
>> > return makes integer from pointer without a cast
>> >
>> > So no warnings about longAt at all.  I wonder what is different between your compile environment and mine.  Are we both talking about Mac or are you on linux?
>>
>> I'm on mac using the standard setup we have on our jenkins server.
>>
>> gcc-4.2 --version
>> i686-apple-darwin11-gcc-4.2.1
>>
>> I assume you disabled the following warnings?
>> -Wno-pointer-to-int-cast
>> -Wno-int-to-pointer-cast
>
>
> Don't think so.  Here's my compile line as reported by xcodebuild:
>
>     /Developer/usr/bin/gcc-4.2 -x c -arch i386 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -O3 -mdynamic-no-pic -DNDEBUG=1 -DCOGMTVM=0 -DDEBUGVM=0 -DUSE_GLOBAL_STRUCT=0 -DNO_ISNAN -DTARGET_API_MAC_CARBON -DSQUEAK_BUILTIN_PLUGIN -DHAVE_SYS_TIME_H -isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 -gdwarf-2 -I/Users/eliot/Cog/oscogvm/macbuild/build/CoreVM.build/DeploymentSymbols/Croquet.build/Croquet.hmap -F/Users/eliot/Cog/oscogvm/macbuild/build/DeploymentSymbols -I/Users/eliot/Cog/oscogvm/macbuild/build/DeploymentSymbols/include -I/Developer/SDKs/MacOSX10.5.sdk/Developer/Headers/FlatCarbon -I/Users/eliot/Cog/oscogvm/macbuild -I/Users/eliot/Cog/oscogvm/macbuild/build/CoreVM.build/DeploymentSymbols/Croquet.build/DerivedSources/i386 -I/Users/eliot/Cog/oscogvm/macbuild/build/CoreVM.build/DeploymentSymbols/Croquet.build/DerivedSources -c /Users/eliot/Cog/oscogvm/macbuild/../src/vm/gcc3x-cointerp.c -o /Users/eliot/Cog/oscogvm/macbuild/build/CoreVM.build/DeploymentSymbols/Croquet.build/Objects-normal/i386/gcc3x-cointerp.o
>
>
> But note I'm *not* defining USE_INLINE_MEMORY_ACCESSORS.  Are you using the same sqMemoryAccess.h as http://www.squeakvm.org/svn/squeak/branches/Cog/platforms/Cross/vm/sqMemoryAccess.h ?

Yes. It is using it:

cd /Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/build/SoundPlugin
&& /usr/bin/gcc  -DHAVE_UUID_GENERATE -DBUILD_FOR_OSX
-DUSE_INLINE_MEMORY_ACCESSORS -DLSB_FIRST -DHAVE_SYS_TIME_H
-DHAVE_NANOSLEEP -DCOGMTVM=0 -DUSE_GLOBAL_STRUCT=0
-DBASE_HEADER_SIZE=4 -DCOGVM -DNDEBUG -DDEBUGVM=0
-DSQUEAK_BUILTIN_PLUGIN -DHAVE_UUID_GENERATE -DBUILD_FOR_OSX
-DUSE_INLINE_MEMORY_ACCESSORS -DLSB_FIRST -DHAVE_SYS_TIME_H
-DHAVE_NANOSLEEP -DCOGMTVM=0 -DUSE_GLOBAL_STRUCT=0
-DBASE_HEADER_SIZE=4 -DCOGVM -DNDEBUG -DDEBUGVM=0 -arch i386 -isysroot
/Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.5
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/build
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/vm/iPhone
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/Cross/vm
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/src/vm
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/vm
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/vm/OSX
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/unix/vm
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/vm/Common/Classes
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/plugins/SoundPlugin
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/vm/OSX/plugins/SoundPlugin
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/Cross/plugins/SoundPlugin
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/Cross/plugins/HostWindowPlugin
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/iOS/vm/iPhone/plugins/HostWindowPlugin
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/platforms/Cross/plugins/FilePlugin
-I/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/src/plugins/SoundPlugin
  -arch i386 -mmacosx-version-min=10.4 -funroll-loops -fasm-blocks
-finline-functions -mfpmath=sse -march=pentium-m -mtune=prescott
-falign-functions=16 -fno-gcse -fno-cse-follow-jumps -std=gnu99 -g0
-Os -fomit-frame-pointer -arch i386 -mmacosx-version-min=10.4
-funroll-loops -fasm-blocks -finline-functions -mfpmath=sse
-march=pentium-m -mtune=prescott -falign-functions=16 -fno-gcse
-fno-cse-follow-jumps -std=gnu99 -g0 -Os -fomit-frame-pointer -include
"/Users/hudson/jenkins/workspace/Cog-Mac-Cocoa/cog/build/CogVM_Prefix.pch"
-o

as well as passing some of the options twice... :)
Esteban can you check the config?


>>
>>
>> see https://ci.lille.inria.fr/pharo/job/Cog-Mac-Cocoa/28/consoleFull and grep for "[ 38%] Building C object" for the detailed view.
>>
>>
>>
>
>
>
> --
> best,
> Eliot
>
>



-- 
Best regards,
Igor Stasenko.


More information about the Vm-dev mailing list