ID:               27830
 User updated by:  adconrad at 0c3 dot net
 Reported By:      adconrad at 0c3 dot net
-Status:           Feedback
+Status:           Open
 Bug Type:         Reproducible crash
 Operating System: Debian 3.0/SPARC
 PHP Version:      4.3.6RC1
 New Comment:

> Please try the new config.m4 



No go.  The glibc tests appear to be incorrect.  I took them out
anyway, and changed the others, as rationalised below.



> Could you try and tweak the #ifdefs if they still don't 

> work, and report back here. 



New and improved line:

-------------------------------------------------

#if (__GNUC__ == 2)&&(__GNUC_MINOR <= 96)&&defined(__sparc__)

-------------------------------------------------



1. I bumped the __GNUC_MINOR version to 96, as I will give you 99-to-1
odds the bug lasted until later pre-releases, and there are a couple of
dists out there (*cough*RedHat*cough*) that actually released a stable
dist based on that buggy pre-release.  I can't verify this in the GCC
bug tracker right now, but given how few people would be running
gcc-2.96 on SPARC, I'd say it's a "better safe than dealing with a
duplicate bug that no one can hunt down later" thing.



2. I pulled out the glibc check after confirming that building with
gcc-2.95 on a system with glibc 2.3 produces the same segfaulting
binary.  It's all GCC's fault, glibc is an innocent bystander.



3. I changed __sparc64 (a define that doesn't always (or ever, in some
systems) exist to __sparc__, since while I reported this happening on a
sparc64 system, one must realise that sparc64 systems are sparc32 in
user-space (well, most of them are).  Compiling for sparc32 or sparc64
targets produces the same bug, so a generic __sparc__ test seems to
make more sense.



With this new and improved line, the Ugly Hack(tm) to work around this
compiler issue seems to work just fine.  Thanks for the help hunting it
down and giving it some TLC.



> Clearly, this is a compiler/glibc bug. Sounds like 

> something you guys at Debian might wanna fix as well. 



Certainly looks like a GCC bug, yes.  However, it's a GCC bug in our
stable release (which doesn't get compiler updates, or PHP updates for
that matter, with the exception of security fixes), so it's not going
to get fixed (this problem doesn't show up in sarge (our upcoming
stable release) or sid (unstable)).  Doesn't stop me from trying to run
the latest PHP on production machines running Debian/stable, however.
:)



I'm not sure how many other Debian/SPARC users try to use the latest
PHP on stable systems, but I'm sure they'd thank you for your efforts. 
Most probably use the php4 packages provided by Debian (and packaged by
me, ironically) that work just fine, but there's always a few
build-from-source types out there.


Previous Comments:
------------------------------------------------------------------------

[2004-04-03 07:29:55] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php4-STABLE-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php4-win32-STABLE-latest.zip

Please try the new config.m4 

Could you try and tweak the #ifdefs if they still don't 

work, and report back here. 

 

Clearly, this is a compiler/glibc bug. Sounds like 

something you guys at Debian might wanna fix as well. 

------------------------------------------------------------------------

[2004-04-03 06:42:23] adconrad at 0c3 dot net

The latest snapshot didn't actually have any changes other than
derick's valgrind-induced fixes, and still failed.  Of course, this is
what I get for responding too quickly to the bug.  :)



I snagged your config.m4 changes from CVS, applied them, regenerated
configure, and the resulting binary still segfaults with the same
backtrace as before.



config.{out,log} and build.log available at the same URL as always,
with a "gcc-2.95-snapshot" suffix.

------------------------------------------------------------------------

[2004-04-03 05:43:14] adconrad at 0c3 dot net

helly: Which "unstable" system is that?  As I mentioned, it's Debian
stable, with what was at the time considered to be the most stable and
sane compiler.



abies: I'll give it a whirl right now.  I assume by the "rerun
buildconf" comment that it's just a change to detect this particular
compiler bug?  I'll check and see how it works.

------------------------------------------------------------------------

[2004-04-03 04:38:12] [EMAIL PROTECTED]

... and be sure to re-run buildconf 

------------------------------------------------------------------------

[2004-04-03 04:37:57] [EMAIL PROTECTED]

Sorry, but your problem does not imply a bug in PHP itself.  For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system is not the
appropriate forum for asking support questions. 

Thank you for your interest in PHP.

In this case the error obviously comes from the unstable system you\'re
using. It would be a very good idea to tell the developers of all
unstable things you were using about the problem: returning a double
shouldn\'t fail at all.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/27830

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

Reply via email to