changeset 822:43178a913a28

Removed PAGESIZE part of Tango patch, it works for me when the check is removed. Updated Tango patch to latest Tango revision.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Tue, 02 Dec 2008 02:45:31 +0100
parents 8f0b24bc55f0
children 794c8af186ce
files dmd/mtype.c dmd2/mtype.c runtime/ldc.diff
diffstat 3 files changed, 79 insertions(+), 108 deletions(-) [+]
line wrap: on
line diff
--- a/dmd/mtype.c	Tue Dec 02 01:44:17 2008 +0100
+++ b/dmd/mtype.c	Tue Dec 02 02:45:31 2008 +0100
@@ -2979,14 +2979,6 @@
 		arg->defaultArg = arg->defaultArg->semantic(sc);
 		arg->defaultArg = resolveProperties(sc, arg->defaultArg);
 		arg->defaultArg = arg->defaultArg->implicitCastTo(sc, arg->type);
-
-		// make sure default arguments only use variables with lower protection
-		// this check only catches the common case that the default arg Exp is a VarExp
-		if(arg->defaultArg->op == TOKvar)
-		{   VarExp *ve = (VarExp *)arg->defaultArg;
-		    if(ve->var->protection != PROTundefined && ve->var->protection < sc->protection)
-			error(loc, "default argument %s has stronger protection than function %s", ve->var->toChars(), toChars());
-		}
 	    }
 
 	    /* If arg turns out to be a tuple, the number of parameters may
--- a/dmd2/mtype.c	Tue Dec 02 01:44:17 2008 +0100
+++ b/dmd2/mtype.c	Tue Dec 02 02:45:31 2008 +0100
@@ -3465,14 +3465,6 @@
 		arg->defaultArg = arg->defaultArg->semantic(sc);
 		arg->defaultArg = resolveProperties(sc, arg->defaultArg);
 		arg->defaultArg = arg->defaultArg->implicitCastTo(sc, arg->type);
-
-		// make sure default arguments only use variables with lower protection
-		// this check only catches the common case that the default arg Exp is a VarExp
-		if(arg->defaultArg->op == TOKvar)
-		{   VarExp *ve = (VarExp *)arg->defaultArg;
-		    if(ve->var->protection != PROTundefined && ve->var->protection < sc->protection)
-			error(loc, "default argument %s has stronger protection than function %s", ve->var->toChars(), toChars());
-		}
 	    }
 
 	    /* If arg turns out to be a tuple, the number of parameters may
--- a/runtime/ldc.diff	Tue Dec 02 01:44:17 2008 +0100
+++ b/runtime/ldc.diff	Tue Dec 02 02:45:31 2008 +0100
@@ -1,63 +1,6 @@
-Index: lib/unittest.sh
-===================================================================
---- lib/unittest.sh	(revision 4134)
-+++ lib/unittest.sh	(working copy)
-@@ -18,8 +18,9 @@
-   --help: This message
-   --run-all: Reports result instead of breaking. Do not use this if you want to
-          run unittest runner through a debugger.
--  dmd: Builds unittests for dmd
--  gdc: Builds unittests for gdc
-+  dmd:    Builds unittests for dmd
-+  gdc:    Builds unittests for gdc
-+  ldc: Builds unittests for ldc
- 
-   <none>: Builds unittests for all known compilers.'
-   exit 0
-@@ -86,7 +87,7 @@
- void main() {}
- EOF
- 
--        rebuild -w -d -g -L-ldl -L-lz -L-lbz2 -debug=UnitTest -debug -full -clean -unittest \
-+        rebuild -w -d -L-ldl -L-lz -L-lbz2 -debug=UnitTest -debug -full -clean -unittest \
-         -version=UnitTest $EXE.d tango/core/*.d tango/core/sync/*.d tango/io/digest/*.d \
-         tango/io/model/*.d tango/io/protocol/*.d tango/io/selector/*.d tango/io/*.d \
-         tango/io/vfs/*.d tango/io/vfs/model/*.d \
-@@ -125,6 +126,9 @@
-         gdc)
-             GDC=1
-             ;;
-+        ldc)
-+            LDC=1
-+            ;;
-         *)
-             usage
-             ;;
-@@ -132,10 +136,11 @@
-     shift
- done
- 
--if [ ! "$DMD" -a ! "$GDC" ]
-+if [ ! "$DMD" -a ! "$GDC" -a ! "$LDC" ]
- then
-     DMD=1
-     GDC=1
-+    LDC=1
- fi
- 
- if [ "$DMD" = "1" ]
-@@ -146,4 +151,7 @@
- then
-     compile gdc runUnitTest_gdc
- fi
--
-+if [ "$LDC" = "1" ]
-+then
-+    compile ldc runUnitTest_ldc
-+fi
 Index: lib/common/tango/core/BitManip.d
 ===================================================================
---- lib/common/tango/core/BitManip.d	(revision 4134)
+--- lib/common/tango/core/BitManip.d	(revision 4145)
 +++ lib/common/tango/core/BitManip.d	(working copy)
 @@ -171,6 +171,10 @@
       */
@@ -72,7 +15,7 @@
      public import std.intrinsic;
 Index: lib/common/tango/core/Thread.d
 ===================================================================
---- lib/common/tango/core/Thread.d	(revision 4134)
+--- lib/common/tango/core/Thread.d	(revision 4145)
 +++ lib/common/tango/core/Thread.d	(working copy)
 @@ -273,8 +273,50 @@
          }
@@ -170,20 +113,7 @@
          {
              // NOTE: The ucontext implementation requires architecture specific
              //       data definitions to operate so testing for it must be done
-@@ -2367,9 +2429,11 @@
-             import tango.stdc.posix.ucontext;
-         }
-     }
--    const size_t PAGESIZE;
- }
- 
-+// this currently need to be public for LDC
-+const size_t PAGESIZE;
-+
- static this()
- {
-     static if( is( typeof( GetSystemInfo ) ) )
-@@ -2510,6 +2574,28 @@
+@@ -2510,6 +2572,28 @@
                  ret;
              }
          }
@@ -212,7 +142,7 @@
          else static if( is( ucontext_t ) )
          {
              Fiber   cfib = Fiber.getThis();
-@@ -2522,7 +2608,7 @@
+@@ -2522,7 +2606,7 @@
      }
  }
  
@@ -221,7 +151,7 @@
  ////////////////////////////////////////////////////////////////////////////////
  // Fiber
  ////////////////////////////////////////////////////////////////////////////////
-@@ -3177,6 +3263,22 @@
+@@ -3177,6 +3261,22 @@
              push( 0x00000000 );                                     // ESI
              push( 0x00000000 );                                     // EDI
          }
@@ -244,9 +174,66 @@
          else version( AsmPPC_Posix )
          {
              version( StackGrowsDown )
+Index: lib/unittest.sh
+===================================================================
+--- lib/unittest.sh	(revision 4145)
++++ lib/unittest.sh	(working copy)
+@@ -18,8 +18,9 @@
+   --help: This message
+   --run-all: Reports result instead of breaking. Do not use this if you want to
+          run unittest runner through a debugger.
+-  dmd: Builds unittests for dmd
+-  gdc: Builds unittests for gdc
++  dmd:    Builds unittests for dmd
++  gdc:    Builds unittests for gdc
++  ldc: Builds unittests for ldc
+ 
+   <none>: Builds unittests for all known compilers.'
+   exit 0
+@@ -86,7 +87,7 @@
+ void main() {}
+ EOF
+ 
+-        rebuild -w -d -g -L-ldl -L-lz -L-lbz2 -debug=UnitTest -debug -full -clean -unittest \
++        rebuild -w -d -L-ldl -L-lz -L-lbz2 -debug=UnitTest -debug -full -clean -unittest \
+         -version=UnitTest $EXE.d tango/core/*.d tango/core/sync/*.d tango/io/digest/*.d \
+         tango/io/model/*.d tango/io/protocol/*.d tango/io/selector/*.d tango/io/*.d \
+         tango/io/vfs/*.d tango/io/vfs/model/*.d \
+@@ -125,6 +126,9 @@
+         gdc)
+             GDC=1
+             ;;
++        ldc)
++            LDC=1
++            ;;
+         *)
+             usage
+             ;;
+@@ -132,10 +136,11 @@
+     shift
+ done
+ 
+-if [ ! "$DMD" -a ! "$GDC" ]
++if [ ! "$DMD" -a ! "$GDC" -a ! "$LDC" ]
+ then
+     DMD=1
+     GDC=1
++    LDC=1
+ fi
+ 
+ if [ "$DMD" = "1" ]
+@@ -146,4 +151,7 @@
+ then
+     compile gdc runUnitTest_gdc
+ fi
+-
++if [ "$LDC" = "1" ]
++then
++    compile ldc runUnitTest_ldc
++fi
 Index: lib/gc/basic/gcx.d
 ===================================================================
---- lib/gc/basic/gcx.d	(revision 4134)
+--- lib/gc/basic/gcx.d	(revision 4145)
 +++ lib/gc/basic/gcx.d	(working copy)
 @@ -65,6 +65,13 @@
  }
@@ -339,7 +326,7 @@
          asm
 Index: lib/gc/basic/gcbits.d
 ===================================================================
---- lib/gc/basic/gcbits.d	(revision 4134)
+--- lib/gc/basic/gcbits.d	(revision 4145)
 +++ lib/gc/basic/gcbits.d	(working copy)
 @@ -39,6 +39,10 @@
  {
@@ -354,7 +341,7 @@
      version = Asm86;
 Index: lib/build-tango.sh
 ===================================================================
---- lib/build-tango.sh	(revision 4134)
+--- lib/build-tango.sh	(revision 4145)
 +++ lib/build-tango.sh	(working copy)
 @@ -23,7 +23,7 @@
    --debug: Will enable debug info
@@ -386,7 +373,7 @@
              build powerpc-apple-darwin8-gdmd libgtango.a.ppc libgphobos.a.ppc
 Index: tango/text/convert/Layout.d
 ===================================================================
---- tango/text/convert/Layout.d	(revision 4134)
+--- tango/text/convert/Layout.d	(revision 4145)
 +++ tango/text/convert/Layout.d	(working copy)
 @@ -47,6 +47,12 @@
          alias void* Arg;
@@ -412,7 +399,7 @@
                  return parse (formatStr, arguments, arglist, sink);
 Index: tango/net/cluster/CacheInvalidator.d
 ===================================================================
---- tango/net/cluster/CacheInvalidator.d	(revision 4134)
+--- tango/net/cluster/CacheInvalidator.d	(revision 4145)
 +++ tango/net/cluster/CacheInvalidator.d	(working copy)
 @@ -79,7 +79,7 @@
  
@@ -425,7 +412,7 @@
  
 Index: tango/core/Vararg.d
 ===================================================================
---- tango/core/Vararg.d	(revision 4134)
+--- tango/core/Vararg.d	(revision 4145)
 +++ tango/core/Vararg.d	(working copy)
 @@ -15,6 +15,10 @@
  {
@@ -440,9 +427,9 @@
      /**
 Index: tango/core/sync/Semaphore.d
 ===================================================================
---- tango/core/sync/Semaphore.d	(revision 4134)
+--- tango/core/sync/Semaphore.d	(revision 4145)
 +++ tango/core/sync/Semaphore.d	(working copy)
-@@ -380,7 +380,8 @@
+@@ -384,7 +384,8 @@
              {
                  synchronized( synComplete )
                  {
@@ -452,7 +439,7 @@
                          break;
                  }
                  Thread.yield();
-@@ -388,9 +389,9 @@
+@@ -392,9 +393,9 @@
  
              synchronized( synComplete )
              {
@@ -464,7 +451,7 @@
              synchronized( synConsumed )
              {
                  assert( numConsumed == numToProduce );
-@@ -451,7 +452,8 @@
+@@ -455,7 +456,8 @@
  
      unittest
      {
@@ -476,7 +463,7 @@
  }
 Index: tango/core/sync/Condition.d
 ===================================================================
---- tango/core/sync/Condition.d	(revision 4134)
+--- tango/core/sync/Condition.d	(revision 4145)
 +++ tango/core/sync/Condition.d	(working copy)
 @@ -553,8 +553,11 @@
  
@@ -492,7 +479,7 @@
  }
 Index: tango/core/Atomic.d
 ===================================================================
---- tango/core/Atomic.d	(revision 4134)
+--- tango/core/Atomic.d	(revision 4145)
 +++ tango/core/Atomic.d	(working copy)
 @@ -270,6 +270,167 @@
  
@@ -664,7 +651,7 @@
  
 Index: tango/math/IEEE.d
 ===================================================================
---- tango/math/IEEE.d	(revision 4134)
+--- tango/math/IEEE.d	(revision 4145)
 +++ tango/math/IEEE.d	(working copy)
 @@ -1554,7 +1554,12 @@
          return (bitsdiff == 0 && !((pa[F.EXPPOS_SHORT] ^ pb[F.EXPPOS_SHORT])& F.EXPMASK)) ? 1 : 0;
@@ -682,7 +669,7 @@
  
 Index: tango/math/Math.d
 ===================================================================
---- tango/math/Math.d	(revision 4134)
+--- tango/math/Math.d	(revision 4145)
 +++ tango/math/Math.d	(working copy)
 @@ -76,6 +76,14 @@
          version = DigitalMars_D_InlineAsm_X86;
@@ -831,7 +818,7 @@
  debug(UnitTest) {
 Index: tango/stdc/posix/sys/types.d
 ===================================================================
---- tango/stdc/posix/sys/types.d	(revision 4134)
+--- tango/stdc/posix/sys/types.d	(revision 4145)
 +++ tango/stdc/posix/sys/types.d	(working copy)
 @@ -422,7 +422,11 @@
  }
@@ -848,7 +835,7 @@
  {
 Index: tango/stdc/stdlib.d
 ===================================================================
---- tango/stdc/stdlib.d	(revision 4134)
+--- tango/stdc/stdlib.d	(revision 4145)
 +++ tango/stdc/stdlib.d	(working copy)
 @@ -94,6 +94,11 @@
  {
@@ -864,7 +851,7 @@
      private import gcc.builtins;
 Index: tango/stdc/stdarg.d
 ===================================================================
---- tango/stdc/stdarg.d	(revision 4134)
+--- tango/stdc/stdarg.d	(revision 4145)
 +++ tango/stdc/stdarg.d	(working copy)
 @@ -13,6 +13,10 @@
  {