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? best cami |
Hi Camillo, On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <[hidden email]> wrote:
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?
best, Eliot cointerp-warnings (6K) Download Attachment |
On 2012-03-20, at 20:11, Eliot Miranda wrote: > Hi Camillo, > > On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <[hidden email]> 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 see https://ci.lille.inria.fr/pharo/job/Cog-Mac-Cocoa/28/consoleFull and grep for "[ 38%] Building C object" for the detailed view. |
On Tue, Mar 20, 2012 at 2:30 PM, Camillo Bruni <[hidden email]> wrote:
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 ?
best, Eliot |
In reply to this post by Camillo Bruni
On Tue, Mar 20, 2012 at 04:35:15PM +0100, Camillo Bruni 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? That is a Really Bad Idea. If the warnings are bothering you, then just relax and have a cup of tea. But they exist for a reason, and if you ever want to get the type declarations right, you will want to pay attention to the what the compiler is telling you. If you think there are too many warnings, then put your energy into addressing the type declaration issues that produce the warnings. Dave |
In reply to this post by Eliot Miranda-2
On 21 March 2012 01:38, Eliot Miranda <[hidden email]> wrote: > > > > On Tue, Mar 20, 2012 at 2:30 PM, Camillo Bruni <[hidden email]> wrote: >> >> >> >> On 2012-03-20, at 20:11, Eliot Miranda wrote: >> >> > Hi Camillo, >> > >> > On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <[hidden email]> 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. |
In reply to this post by David T. Lewis
Ok, void is not int 10 years back (ok nov 29/30 2002 ) I was irritated about int foo() { } where foo says it returns int, but never returns anything... Attached is an ancient change set to fix that. However what we found was that things like the all interface where you would set the primitive failure code would "assume" setting the primitive failure flag returned the failure flag. Er it does not and the complier silently digests the stupidity... Fixing issues like that higher up perhaps, ok if the api returns the flag, return it? Or return nil or whatever the compiler helpfully does scratching it's head about the confused messages... Did once watch a "C" fellow pop a blood vessel when he saw the 1,200 warning msgs go by... Get over I said... On Tue, Mar 20, 2012 at 9:50 PM, David T. Lewis <[hidden email]> wrote: > > On Tue, Mar 20, 2012 at 04:35:15PM +0100, Camillo Bruni 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? > > That is a Really Bad Idea. If the warnings are bothering you, then just > relax and have a cup of tea. But they exist for a reason, and if you > ever want to get the type declarations right, you will want to pay > attention to the what the compiler is telling you. If you think there > are too many warnings, then put your energy into addressing the type > declaration issues that produce the warnings. > > Dave > -- =========================================================================== John M. McIntosh <[hidden email]> Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com =========================================================================== voidIsVoidNotInt.10.cs (117K) Download Attachment |
In reply to this post by David T. Lewis
>> 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? > > That is a Really Bad Idea. If the warnings are bothering you, then just > relax and have a cup of tea. But they exist for a reason, and if you > ever want to get the type declarations right, you will want to pay > attention to the what the compiler is telling you. If you think there > are too many warnings, then put your energy into addressing the type > declaration issues that produce the warnings. Dave (non aggressive) Are vm maintainers interested in getting less warning? Because then it would be really a nice effort to push. Stef |
In reply to this post by Igor Stasenko
On 2012-03-21, at 03:18, Igor Stasenko wrote: > > On 21 March 2012 01:38, Eliot Miranda <[hidden email]> wrote: >> >> >> >> On Tue, Mar 20, 2012 at 2:30 PM, Camillo Bruni <[hidden email]> wrote: >>> >>> >>> >>> On 2012-03-20, at 20:11, Eliot Miranda wrote: >>> >>>> Hi Camillo, >>>> >>>> On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <[hidden email]> 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: ok, so I was right by having the macros back :) - 1000 warnings, yay! > 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. |
In reply to this post by Igor Stasenko
Hi, Sorry, I'm in the middle of a "moving earthquake"... running, running, running to finish everything for next week. I will take a look as soon as I can sit down in my computer (maybe on friday). Cheers, Esteban El 20/03/2012, a las 11:18p.m., Igor Stasenko escribió: > > On 21 March 2012 01:38, Eliot Miranda <[hidden email]> wrote: >> >> >> >> On Tue, Mar 20, 2012 at 2:30 PM, Camillo Bruni <[hidden email]> wrote: >>> >>> >>> >>> On 2012-03-20, at 20:11, Eliot Miranda wrote: >>> >>>> Hi Camillo, >>>> >>>> On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <[hidden email]> 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. |
On 21 March 2012 12:40, Esteban Lorenzano <[hidden email]> wrote: > > Hi, > > Sorry, I'm in the middle of a "moving earthquake"... running, running, running to finish everything for next week. > I will take a look as soon as I can sit down in my computer (maybe on friday). > just wanted to let you know. perhaps we can fix it with camillo in closest days.. he wants to include SSL plugin into builds.. so we might also fix configs as well. > Cheers, > Esteban > > El 20/03/2012, a las 11:18p.m., Igor Stasenko escribió: > >> >> On 21 March 2012 01:38, Eliot Miranda <[hidden email]> wrote: >>> >>> >>> >>> On Tue, Mar 20, 2012 at 2:30 PM, Camillo Bruni <[hidden email]> wrote: >>>> >>>> >>>> >>>> On 2012-03-20, at 20:11, Eliot Miranda wrote: >>>> >>>>> Hi Camillo, >>>>> >>>>> On Tue, Mar 20, 2012 at 8:35 AM, Camillo Bruni <[hidden email]> 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. > -- Best regards, Igor Stasenko. |
In reply to this post by stephane ducasse-2
On Wed, Mar 21, 2012 at 09:45:04AM +0100, stephane ducasse 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? > > > > That is a Really Bad Idea. If the warnings are bothering you, then just > > relax and have a cup of tea. But they exist for a reason, and if you > > ever want to get the type declarations right, you will want to pay > > attention to the what the compiler is telling you. If you think there > > are too many warnings, then put your energy into addressing the type > > declaration issues that produce the warnings. > > Dave > > (non aggressive) Are vm maintainers interested in getting less warning? > Because then it would be really a nice effort to push. Yes, sure. Working through those compiler warnings have been a huge part of the efforts to resolve 32/64 bit problems in the VM and in plugins, and in making the VM capable of supporting larger object memories. Not all of the warnings point to real problems in practice, but in general it is good to look at each warning to understand root cause, add type declarations where appropriate, and fix problems when there is a real issue. There are still plenty of issues to be fixed in plugins (for example, see Mantis for the SurfacePlugin issue, that is a real challenging one). There is also an important FFI issue on Mantis. The fixes probably have bit rot now, but I think the underlying issues will certainly affect alien and the new FFI implementations on 64-bit platforms, so that is a good one to work on too. Dave |
Free forum by Nabble | Edit this page |