Hi Truls, Le 3 juin 09 à 22:38, Truls Becken a écrit :
> Hi, > > Is anybody else using GCC 4.4? Not yet. > I had to do the following changes to > make Étoilé compile today. > > Most of the errors are because of possibly uninitialized variables. > The code is probably not finished here, though, because in all three > places below, the variables actually never get set. Yes, the IconKit code is unfinished and needs to be improved/reworked in many places. UKPluginsRegistry code needs to be revised too. > There is also one I did not include in the diff; ETUUID uses an > uninitialized variable on purpose to generate a random seed (as a > fallback in case /dev/random does not work). GCC 4.4 does not like > that. ok. > The stdio.h in CodeGen is because the LOG macro uses fprintf and > stderr. > > Cheers, > Truls > > UKPluginsRegistry.m Languages/LanguageKit/CodeGen/CodeGenModule.h > Index: Frameworks/IconKit/Source/IKApplicationIconProvider.m > =================================================================== > --- Frameworks/IconKit/Source/IKApplicationIconProvider.m > (revision 4747) > +++ Frameworks/IconKit/Source/IKApplicationIconProvider.m > (working copy) > @@ -253,7 +253,7 @@ > NSString *path; > NSString *subpath; > NSString *pathComponent = [_path md5Hash]; > - BOOL result; > + BOOL result = NO; > > pathComponent = [pathComponent stringByAppendingPathExtension: > @"tiff"]; > > Index: Frameworks/IconKit/Source/IKThumbnailProvider.m > =================================================================== > --- Frameworks/IconKit/Source/IKThumbnailProvider.m (revision > 4747) > +++ Frameworks/IconKit/Source/IKThumbnailProvider.m (working copy) > @@ -170,7 +170,7 @@ > NSString *subpath; > NSString *pathComponent = [url absoluteString]; > NSString *pathComponentHash = [pathComponent md5Hash]; > - BOOL result; > + BOOL result = NO; > > path = [self _thumbnailsPath]; > subpath = [path stringByAppendingPathComponent: @"large"]; In the two previous cases, the correct fix is to assign what NSFileManager operation-related calls return to the 'result' variable. I'll fix that. > > Index: Frameworks/EtoileFoundation/Source/UKPluginsRegistry.m > =================================================================== > --- Frameworks/EtoileFoundation/Source/UKPluginsRegistry.m > (revision 4747) > +++ Frameworks/EtoileFoundation/Source/UKPluginsRegistry.m > (working copy) > @@ -258,7 +258,7 @@ > { > NSBundle *bundle = [NSBundle bundleWithPath: path]; > NSString *identifier; > - id image; > + id image = [NSNull null]; > NSString *name; An assignment is missing here, this should be: image = [self loadIconForPath:iconPath]; ^^^^^^^ /* When image loading has failed, we set its value to null object in in order to be able to create info dictionary without glitches a 'nil' value would produce (like subsequent elements being ignored). */ if (image == nil) image = [NSNull null]; > /* We retrieve plugin's name */ > Index: Languages/LanguageKit/CodeGen/CodeGenModule.h > =================================================================== > --- Languages/LanguageKit/CodeGen/CodeGenModule.h (revision > 4747) > +++ Languages/LanguageKit/CodeGen/CodeGenModule.h (working copy) > @@ -1,6 +1,7 @@ > #ifndef __CODE_GEN_MODULE__INCLUDED__ > #define __CODE_GEN_MODULE__INCLUDED__ > #include "CGObjCRuntime.h" > +#include <stdio.h> > > namespace llvm { > class BasicBlock; Looks ok, although I don't understand/know which change in GCC has triggered the need to now explicitely include the header. Anybody has an idea? I'll commit these fixes and take a look at ETUUID too. Thanks for the compilation report :-) Quentin. _______________________________________________ Etoile-dev mailing list Etoile-dev@gna.org https://mail.gna.org/listinfo/etoile-dev