Edit report at https://bugs.php.net/bug.php?id=74904&edit=1
ID: 74904
Comment by: john dot woods at greatplainsmfg dot com
Reported by: john dot woods at greatplainsmfg dot com
Summary: zend_operators.h: Error: The function "isfinite"
must have a prototype.
Status: Open
Type: Bug
Package: Compile Failure
Operating System: Solaris 11.3.21.5.0 (x86-64)
PHP Version: 7.1.7
Block user comment: N
Private report: N
New Comment:
Supporting a diversity of platforms, like Windows, Linux, Solaris, and other Unix variants is
actually a strength. I'm not going to argue with you any further about choice of
platforms/compilers, because it's simply not helpful to the PHP community at-large.
In short, if you don't care about using Solaris, you (personally) don't have to. Please
just go away, and let others provide *constructive* input that helps PHP continue to be an awesome
cross-platform development tool.
Previous Comments:
------------------------------------------------------------------------
[2017-07-11 19:23:16] spam2 at rhsoft dot net
well, use a state-of-the-art operating system or if you want to stick with outdated environments
just use outdated PHP - as always you have to make decisions
currently PHP 5.6 works, 7.0.x has active support and so you hav etime to make your decisions
------------------------------------------------------------------------
[2017-07-11 19:00:14] john dot woods at greatplainsmfg dot com
Upgrading to Solaris Studio 12.6 did not resolve the issue.
Unfortunately, C++ 03 (-std=sun03) is the default still for Solaris Studio, so as a sysadmin, I have
no choice but to roll with it. How do we sucessfully force the compiler to C++ 14? When I try just
using the switch "-std=c++14", the compiler throws errors like this:
"/opt/developerstudio12.6/lib/compilers/CC-gcc/include/c++/5.4.0/bits/basic_string.h",
line 5300: Error: Could not find a match for __gnu_cxx::__to_xstring<_String, _CharT>(extern
"C" int(*)(char*,unsigned long,const char*,__va_list_element*), unsigned long, const
char[3], int) needed in std::to_string(int).
"/opt/developerstudio12.6/lib/compilers/CC-gcc/include/c++/5.4.0/ext/string_conversions.h",
line 83: Note: Candidate 'std::string __gnu_cxx::__to_xstring<std::string,
char>(int(*)(char*,unsigned long,const char*,__va_list_tag*), unsigned long, const char*,
...)' is not viable: argument '__convf' can't be converted from 'extern
"C" int(*)(char*,unsigned long,const char*,__va_list_element*)' to
'int(*)(char*,unsigned long,const char*,__va_list_tag*)'.
I'm going to continue working towards a resolution as well, but the fix is elusive currently.
------------------------------------------------------------------------
[2017-07-11 16:31:06] john dot woods at greatplainsmfg dot com
Yes, I did read the comments on that bug, and a patch that worked was committed, and is present in
7.1.7. Yet, we get a similar message. It's fundamentally a different issue, since this is C++,
not C.
As for the compiler, I'll upgrade from Solaris Studio 12.5 to 12.6, and see if that resolves
the issue.
------------------------------------------------------------------------
[2017-07-11 16:13:05] spam2 at rhsoft dot net
and while you say "I don't believe this is a duplicate of Bug #74265" did you read
the comments?
[2017-05-03 05:23 UTC] rasmus@php.net
gcc version 4.1.2 ?? That compiler is over 10 years old. You are probably going to need to add
-std=c99 to your build flags to get it to work on any modern codebase, or for heaven's sake,
upgrade to a compiler from this decade.
------------------------------------------------------------------------
[2017-07-11 16:11:12] spam2 at rhsoft dot net
-std=c++03 is simply too old - we have 2017 and way newer standards and i doubt PHP upstream
developers can and should forever care about 15 years or older compilers - there was a simliar
bugreport some months ago with a ages old GCC
------------------------------------------------------------------------
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
https://bugs.php.net/bug.php?id=74904
--
Edit this bug report at https://bugs.php.net/bug.php?id=74904&edit=1