This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, c* ,ObjC*] handle string objects in format checking.


Yes :-(

whenever possible, ObjC/ObjC++ testcases shouldn't #import <Foundation/Foundation.h> ...

 * it destroys the whole point of having testcases test a single, specific part or feature of the compiler

 * whether testcases pass or not depend on the version of the FoundationKit being used

 * it is hard to run any such tests with the GNU runtime

(Btw, ObjC/ObjC++ testcases that #import <Foundation/Foundation.h> usually come from Apple - we 
should really try to clean them to avoid Foundation/Foundation.h if possible) ;-)

Thanks

-----Original Message-----
From: "Jack Howarth" <howarth@bromo.med.uc.edu>
Sent: Sunday, 24 October, 2010 22:05
To: "IainS" <developer@sandoe-acoustics.co.uk>
Cc: "Joseph S. Myers" <joseph@codesourcery.com>, "GCC Patches" <gcc-patches@gcc.gnu.org>, "Mike Stump" <mrs@gcc.gnu.org>
Subject: Re: [Patch, c* ,ObjC*] handle string objects in format checking.

On Sun, Oct 24, 2010 at 05:20:19PM +0100, IainS wrote:
>
> on Darwin10, any test-case that includes <Foundation/Foundation.h>
> or anything that includes (indirectly usually) CFString.h
>
> for example;
> gcc/testsuite/objc.dg/no-extra-load.m:#import <Foundation/Foundation.h>
> gcc/testsuite/objc.dg/objc-foreach-4.m:#include <Foundation/ 
> Foundation.h>
> gcc/testsuite/objc.dg/objc-foreach-5.m:#import <Foundation/Foundation.h>
>

Iain,
   I am finding on x86_64-apple-darwin10 that your patch eliminates the following
testsuite failures...

unix/-m32
FAIL: objc.dg/no-extra-load.m -fnext-runtime (test for excess errors)
ERROR: objc.dg/no-extra-load.m: error executing dg-final: couldn't open "no-extra-load.s": no such file or directory
UNRESOLVED: objc.dg/no-extra-load.m: error executing dg-final: couldn't open "no-extra-load.s": no such file or directory
FAIL: objc.dg/objc-foreach-4.m -fnext-runtime (test for excess errors)
FAIL: objc.dg/objc-foreach-5.m -fnext-runtime (test for excess errors)
ERROR: objc.dg/objc-foreach-5.m: error executing dg-final: couldn't open "objc-foreach-5.s": no such file or directory
UNRESOLVED: objc.dg/objc-foreach-5.m: error executing dg-final: couldn't open "objc-foreach-5.s": no such file or directory
FAIL: objc.dg/property/property-2.m -fnext-runtime (test for excess errors)
WARNING: objc.dg/property/property-2.m -fnext-runtime compilation failed to produce executable
FAIL: objc.dg/property/property-3.m -fnext-runtime (test for excess errors)
WARNING: objc.dg/property/property-3.m -fnext-runtime compilation failed to produce executable
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O0  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O1  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O2  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O3 -fomit-frame-pointer  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O3 -g  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -Os  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O2 -flto  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O2 -fwhopr  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/property/property-2.mm -fnext-runtime (test for excess errors)
WARNING: obj-c++.dg/property/property-2.mm -fnext-runtime compilation failed to produce executable
FAIL: obj-c++.dg/property/property-3.mm -fnext-runtime (test for excess errors)
WARNING: obj-c++.dg/property/property-3.mm -fnext-runtime compilation failed to produce executable
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O0  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O1  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O2  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O3 -fomit-frame-pointer  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O3 -g  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -Os  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O2 -flto  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O2 -fwhopr  -fnext-runtime (test for excess errors)

unix/-m64
FAIL: objc.dg/no-extra-load.m -fnext-runtime (test for excess errors)
ERROR: objc.dg/no-extra-load.m: error executing dg-final: couldn't open "no-extra-load.s": no such file or directory
UNRESOLVED: objc.dg/no-extra-load.m: error executing dg-final: couldn't open "no-extra-load.s": no such file or directory
FAIL: objc.dg/objc-foreach-4.m -fnext-runtime (test for excess errors)
FAIL: objc.dg/objc-foreach-5.m -fnext-runtime (test for excess errors)
ERROR: objc.dg/objc-foreach-5.m: error executing dg-final: couldn't open "objc-foreach-5.s": no such file or directory
UNRESOLVED: objc.dg/objc-foreach-5.m: error executing dg-final: couldn't open "objc-foreach-5.s": no such file or directory
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O0  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O1  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O2  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O3 -fomit-frame-pointer  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O3 -g  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -Os  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O2 -flto  -fnext-runtime (test for excess errors)
FAIL: objc.dg/torture/strings/const-cfstring-1.m  -O2 -fwhopr  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O0  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O1  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O2  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O3 -fomit-frame-pointer  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O3 -g  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -Os  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O2 -flto  -fnext-runtime (test for excess errors)
FAIL: obj-c++.dg/torture/strings/const-cfstring-1.mm  -O2 -fwhopr  -fnext-runtime (test for excess errors)







Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]