fix for 48208 and 48260 on darwin

Submitted by Mike Stump on March 30, 2011, 2:46 p.m.

Details

Message ID 52BD07D4-98A4-4FEC-B466-F53E6D74CE59@comcast.net
State New
Headers show

Commit Message

Mike Stump March 30, 2011, 2:46 p.m.
On Mar 30, 2011, at 5:41 AM, gcchelp.5.adept@0sg.net wrote:
> Tests that now fail, but worked before:
> 
> g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C  (test for warnings, line 7)
> 
> Tests that now work, but didn't before:
> 
> g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C  (test for warnings, line 7)

Yeah, someone thought it would be funny to have two test cases with the same exact name, and then to have one of them fail and the other one work, so, technically, what it said is true.

I've now applied the patch for you.  In the future, by sure to attach the diffs as a file, as Mail eats white spacing in odd ways which corrupts patches.

Thanks.
2011-03-30  Christian Schüler  <cschueler@gmx.de>

	PR/driver 48208
	* config/c.opt (F): Added 'Driver' to -F option.
	PR/driver 48260
	* config/darwin-driver.c (darwin_driver_init): Add '-arch' to handler function.
	* config/darwin.opt: Added '-arch' option.

Patch hide | download patch | download mbox

Index: c-family/c.opt
===================================================================
--- c-family/c.opt	(revision 171691)
+++ c-family/c.opt	(working copy)
@@ -201,7 +201,7 @@ 
 C ObjC C++ ObjC++ Undocumented Var(flag_preprocess_only)
 
 F
-C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)
+Driver C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)
 -F <dir>	Add <dir> to the end of the main framework include path
 
 H
Index: config/darwin.opt
===================================================================
--- config/darwin.opt	(revision 171691)
+++ config/darwin.opt	(working copy)
@@ -31,6 +31,9 @@ 
 allowable_client
 Driver Separate Alias(Zallowable_client)
 
+arch
+Driver RejectNegative Separate
+
 arch_errors_fatal
 Driver Alias(Zarch_errors_fatal)
 
Index: config/darwin-driver.c
===================================================================
--- config/darwin-driver.c	(revision 171691)
+++ config/darwin-driver.c	(working copy)
@@ -161,6 +161,15 @@ 
 	continue;
       switch ((*decoded_options)[i].opt_index)
 	{
+#if DARWIN_X86
+	case OPT_arch:
+	  if (!strcmp ((*decoded_options)[i].arg, "i386"))
+	    generate_option (OPT_m32, NULL, 1, CL_DRIVER, &(*decoded_options)[i]);
+	  else if (!strcmp ((*decoded_options)[i].arg, "x86_64"))
+	    generate_option (OPT_m64, NULL, 1, CL_DRIVER, &(*decoded_options)[i]);
+	  break;
+#endif
+
 	case OPT_filelist:
 	case OPT_framework:
 	  ++*decoded_options_count;