#40431 [NEW]: ReflectionProperty::isStatic() returns true for overloaded properties

2007-02-10 Thread bugs at forestfactory dot de
From: bugs at forestfactory dot de
Operating system: Windows XP SP2
PHP version:  4CVS-2007-02-10 (CVS)
PHP Bug Type: Class/Object related
Bug description:  ReflectionProperty::isStatic() returns true for overloaded 
properties

Description:

For stdClass objects, ReflectionProperty::isStatic() returns true for all
properties.

Code has two examples, the first one showing the bug, the second one
showing the expected result.

Reproduce code:
---
?php
// Creating Obj with new doesn't affect this bug
/* $Obj = new stdClass; */
$Obj-value = 'value';
$RefObj = new ReflectionObject($Obj);
foreach ($RefObj-getProperties() as $Property) {
  var_dump($Property-isStatic()); // prints bool(true)
}

// Reflection works for this class
class myClass extends stdClass {
}

$MyObj = new myClass;
$MyObj-value = 'value';
$RefObj = new ReflectionObject($MyObj);
foreach ($RefObj-getProperties() as $Property) {
  var_dump($Property-isStatic()); // prints bool(false)
}
?

Expected result:

both var_dump's should print bool(false)

Actual result:
--
stdClass::$value is said to be static

-- 
Edit bug report at http://bugs.php.net/?id=40431edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=40431r=trysnapshot44
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=40431r=trysnapshot52
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=40431r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=40431r=fixedcvs
Fixed in release: 
http://bugs.php.net/fix.php?id=40431r=alreadyfixed
Need backtrace:   http://bugs.php.net/fix.php?id=40431r=needtrace
Need Reproduce Script:http://bugs.php.net/fix.php?id=40431r=needscript
Try newer version:http://bugs.php.net/fix.php?id=40431r=oldversion
Not developer issue:  http://bugs.php.net/fix.php?id=40431r=support
Expected behavior:http://bugs.php.net/fix.php?id=40431r=notwrong
Not enough info:  
http://bugs.php.net/fix.php?id=40431r=notenoughinfo
Submitted twice:  
http://bugs.php.net/fix.php?id=40431r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=40431r=globals
PHP 3 support discontinued:   http://bugs.php.net/fix.php?id=40431r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=40431r=dst
IIS Stability:http://bugs.php.net/fix.php?id=40431r=isapi
Install GNU Sed:  http://bugs.php.net/fix.php?id=40431r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=40431r=float
No Zend Extensions:   http://bugs.php.net/fix.php?id=40431r=nozend
MySQL Configuration Error:http://bugs.php.net/fix.php?id=40431r=mysqlcfg


#36369 [NEW]: built in tempaltes pass parameters through in conflict to rfc

2006-02-11 Thread bugs at forestfactory dot de
From: bugs at forestfactory dot de
Operating system: Windows XP
PHP version:  5.1.2
PHP Bug Type: XSLT related
Bug description:  built in tempaltes pass parameters through in conflict to rfc

Description:

As of http://www.w3.org/TR/xslt#built-in-rule, the built in templates
should just call any subordinated templates, but in PHP it passes
parameters through.

Reproduce code:
---
(to be short, this are just XML fragments)

XML:
first
  second
third/
  /second
/first

XSLT:
template match=first
  apply-template select=second
with-param name=foo select='bar'/
  /apply-template
/template

template match=third
  param name=foo/
  value-of select=$foo/
/template

Expected result:

No output as $foo should not be set.

Actual result:
--
Outputs bar

-- 
Edit bug report at http://bugs.php.net/?id=36369edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=36369r=trysnapshot44
Try a CVS snapshot (PHP 5.1): 
http://bugs.php.net/fix.php?id=36369r=trysnapshot51
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=36369r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=36369r=fixedcvs
Fixed in release: 
http://bugs.php.net/fix.php?id=36369r=alreadyfixed
Need backtrace:   http://bugs.php.net/fix.php?id=36369r=needtrace
Need Reproduce Script:http://bugs.php.net/fix.php?id=36369r=needscript
Try newer version:http://bugs.php.net/fix.php?id=36369r=oldversion
Not developer issue:  http://bugs.php.net/fix.php?id=36369r=support
Expected behavior:http://bugs.php.net/fix.php?id=36369r=notwrong
Not enough info:  
http://bugs.php.net/fix.php?id=36369r=notenoughinfo
Submitted twice:  
http://bugs.php.net/fix.php?id=36369r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=36369r=globals
PHP 3 support discontinued:   http://bugs.php.net/fix.php?id=36369r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=36369r=dst
IIS Stability:http://bugs.php.net/fix.php?id=36369r=isapi
Install GNU Sed:  http://bugs.php.net/fix.php?id=36369r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=36369r=float
No Zend Extensions:   http://bugs.php.net/fix.php?id=36369r=nozend
MySQL Configuration Error:http://bugs.php.net/fix.php?id=36369r=mysqlcfg


#36369 [Fbk-Opn]: built in tempaltes pass parameters through in conflict to rfc

2006-02-11 Thread bugs at forestfactory dot de
 ID:   36369
 User updated by:  bugs at forestfactory dot de
 Reported By:  bugs at forestfactory dot de
-Status:   Feedback
+Status:   Open
 Bug Type: XSLT related
 Operating System: Windows XP
 PHP Version:  5.1.2
 New Comment:

?php
// Testcase
header('Content-type: text/xml');
$xsltProcessor = new XSLTProcessor();
$xsltProcessor-importStylesheet(DOMDocument::loadXML('xsl:stylesheet
version=1.0
xmlns:xsl=http://www.w3.org/1999/XSL/Transform;xsl:template
match=/outputxsl:apply-templates//output/xsl:templatexsl:template
match=firstxsl:apply-templates select=secondxsl:with-param
name=foo
select=\'bar\'//xsl:apply-templates/xsl:templatexsl:template
match=thirdxsl:param name=foo/paramxsl:value-of
select=$foo//param/xsl:template/xsl:stylesheet'));
echo
$xsltProcessor-transformToXML(DOMDocument::loadXML('rootfirstsecondthird//second/first/root'));
?


Previous Comments:


[2006-02-12 00:00:48] [EMAIL PROTECTED]

Thank you for this bug report. To properly diagnose the problem, we
need a short but complete example script to be able to reproduce
this bug ourselves. 

A proper reproducing script starts with ?php and ends with ?,
is max. 10-20 lines long and does not require any external 
resources such as databases, etc.

If possible, make the script source available online and provide
an URL to it here. Try to avoid embedding huge scripts into the report.





[2006-02-11 23:47:46] bugs at forestfactory dot de

Description:

As of http://www.w3.org/TR/xslt#built-in-rule, the built in templates
should just call any subordinated templates, but in PHP it passes
parameters through.

Reproduce code:
---
(to be short, this are just XML fragments)

XML:
first
  second
third/
  /second
/first

XSLT:
template match=first
  apply-template select=second
with-param name=foo select='bar'/
  /apply-template
/template

template match=third
  param name=foo/
  value-of select=$foo/
/template

Expected result:

No output as $foo should not be set.

Actual result:
--
Outputs bar





-- 
Edit this bug report at http://bugs.php.net/?id=36369edit=1


#36369 [Opn]: built in tempaltes pass parameters through in conflict to rfc

2006-02-11 Thread bugs at forestfactory dot de
 ID:   36369
 User updated by:  bugs at forestfactory dot de
 Reported By:  bugs at forestfactory dot de
 Status:   Open
 Bug Type: XSLT related
 Operating System: Windows XP
 PHP Version:  5.1.2
 New Comment:

I'm sorry, but the line breaks broke the testcase. Please remove them.


Previous Comments:


[2006-02-12 00:29:52] bugs at forestfactory dot de

?php
// Testcase
header('Content-type: text/xml');
$xsltProcessor = new XSLTProcessor();
$xsltProcessor-importStylesheet(DOMDocument::loadXML('xsl:stylesheet
version=1.0
xmlns:xsl=http://www.w3.org/1999/XSL/Transform;xsl:template
match=/outputxsl:apply-templates//output/xsl:templatexsl:template
match=firstxsl:apply-templates select=secondxsl:with-param
name=foo
select=\'bar\'//xsl:apply-templates/xsl:templatexsl:template
match=thirdxsl:param name=foo/paramxsl:value-of
select=$foo//param/xsl:template/xsl:stylesheet'));
echo
$xsltProcessor-transformToXML(DOMDocument::loadXML('rootfirstsecondthird//second/first/root'));
?



[2006-02-12 00:00:48] [EMAIL PROTECTED]

Thank you for this bug report. To properly diagnose the problem, we
need a short but complete example script to be able to reproduce
this bug ourselves. 

A proper reproducing script starts with ?php and ends with ?,
is max. 10-20 lines long and does not require any external 
resources such as databases, etc.

If possible, make the script source available online and provide
an URL to it here. Try to avoid embedding huge scripts into the report.





[2006-02-11 23:47:46] bugs at forestfactory dot de

Description:

As of http://www.w3.org/TR/xslt#built-in-rule, the built in templates
should just call any subordinated templates, but in PHP it passes
parameters through.

Reproduce code:
---
(to be short, this are just XML fragments)

XML:
first
  second
third/
  /second
/first

XSLT:
template match=first
  apply-template select=second
with-param name=foo select='bar'/
  /apply-template
/template

template match=third
  param name=foo/
  value-of select=$foo/
/template

Expected result:

No output as $foo should not be set.

Actual result:
--
Outputs bar





-- 
Edit this bug report at http://bugs.php.net/?id=36369edit=1