Author: bernhard
Date: Sat Jan  3 06:57:53 2009
New Revision: 34883

Modified:
   trunk/languages/pipp/pipp.pir
   trunk/languages/pipp/t/php/superglobals.t

Log:
[Pipp] Simplify  set_superglobals()


Modified: trunk/languages/pipp/pipp.pir
==============================================================================
--- trunk/languages/pipp/pipp.pir       (original)
+++ trunk/languages/pipp/pipp.pir       Sat Jan  3 06:57:53 2009
@@ -299,47 +299,42 @@
 .end
 
 # Most of the superglobals are not initialized yet
-# When adding superglobals, please alse add then in the rule TOP of actions.pm
+# When adding superglobals, please alse add them to @?SUPER_GLOBALS in 
actions.pm
 .sub set_superglobals
 
     # the superglobals _GET and _POST need to be set up
-    .local pmc parse_get_sub, superglobal_GET
+    .local pmc parse_get_sub
     parse_get_sub       = get_root_global ['parrot';'CGI'; 'QueryHash'], 
'parse_get'
-    ( superglobal_GET ) = parse_get_sub()
-    set_root_global ['pipp'], '$_GET', superglobal_GET
+    ( $P0 ) = parse_get_sub()
+    set_root_global ['pipp'], '$_GET', $P0
 
-    .local pmc parse_post_sub, superglobal_POST
+    .local pmc parse_post_sub
     parse_post_sub       = get_root_global ['parrot';'CGI';'QueryHash'], 
'parse_post'
-    ( superglobal_POST ) = parse_post_sub()
-    set_root_global ['pipp'], '$_POST', superglobal_POST
+    ( $P0 ) = parse_post_sub()
+    set_root_global ['pipp'], '$_POST', $P0
 
-    .local pmc superglobal_SERVER
-    superglobal_SERVER = new 'PhpArray'
-    set_root_global ['pipp'], '$_SERVER', superglobal_SERVER
-
-    .local pmc superglobal_GLOBALS
-    superglobal_GLOBALS = new 'PhpArray'
-    set_root_global ['pipp'], '$_GLOBALS', superglobal_GLOBALS
-
-    .local pmc superglobal_FILES
-    superglobal_FILES = new 'PhpArray'
-    set_root_global ['pipp'], '$_FILES', superglobal_FILES
-
-    .local pmc superglobal_COOKIE
-    superglobal_COOKIE = new 'PhpArray'
-    set_root_global ['pipp'], '$_COOKIE', superglobal_COOKIE
-
-    .local pmc superglobal_SESSION
-    superglobal_SESSION = new 'PhpArray'
-    set_root_global ['pipp'], '$_SESSION', superglobal_SESSION
-
-    .local pmc superglobal_REQUEST
-    superglobal_REQUEST = new 'PhpArray'
-    set_root_global ['pipp'], '$_REQUEST', superglobal_REQUEST
-
-    .local pmc superglobal_ENV
-    superglobal_ENV = new 'PhpArray'
-    set_root_global ['pipp'], '$_ENV', superglobal_ENV
+    $P0 = new 'PhpArray'
+    set_root_global ['pipp'], '$_SERVER', $P0
+
+    $P0 = new 'PhpArray'
+    set_root_global ['pipp'], '$_GLOBALS', $P0
+
+    $P0 = new 'PhpArray'
+    set_root_global ['pipp'], '$_FILES', $P0
+
+    $P0 = new 'PhpArray'
+    set_root_global ['pipp'], '$_COOKIE', $P0
+
+    $P0 = new 'PhpArray'
+    $P0['name'] = '$_SESSION'  # dummy content
+    set_root_global ['pipp'], '$_SESSION', $P0
+
+    $P0 = new 'PhpArray'
+    $P0['name'] = '$_REQUEST'  # dummy content
+    set_root_global ['pipp'], '$_REQUEST', $P0
+
+    $P0 = new 'PhpArray'
+    set_root_global ['pipp'], '$_ENV', $P0
 
 .end
 

Modified: trunk/languages/pipp/t/php/superglobals.t
==============================================================================
--- trunk/languages/pipp/t/php/superglobals.t   (original)
+++ trunk/languages/pipp/t/php/superglobals.t   Sat Jan  3 06:57:53 2009
@@ -31,6 +31,21 @@
 cgi-fcgi
 OUT
 
+language_output_is( 'Pipp', <<'CODE', <<'OUT', 'using two superglobals' );
+<?php
+
+echo $_REQUEST['name'];
+echo "\n";
+
+echo $_SESSION['name'];
+echo "\n";
+
+?>
+CODE
+$_REQUEST
+$_SESSION
+OUT
+
 $ENV{REQUEST_TYPE} = 'GET';
 $ENV{QUERY_STRING} = 'as=df';
 

Reply via email to