On Apr 10, 2026, at 13:13, Bjarne D Mathiesen wrote:
> 
>    configure.cxxflags-append -std=c++11

Correct. 

>    configure.cflags-append -std=c++11

Incorrect: c++11 is not a C standard. 

>    configure.ldflags-append -std=gnu11

Incorrect: the linker doesn't need to know there language standard. 

>    configure.env           CXXFLAGS=-std=c++1z

Incorrect: macports sets the CXXFLAGS environment variable for you based on the 
configure.cxxflags variable. 

> Also, the C++ standard is issued everry 3rd year, so we've got
>    c++11 ; c++14 ; c++17 ; c++20
> Which one is recommended for php ?

You'll have to consult php documentation or its developers to find out the 
minimum language standard they support. 

Also don't forget that the default for clang and gcc is to enable gnu language 
extensions. Specifying e.g. -std=c++11 disables those extensions which will be 
a problem if the code requires them. To keep the gnu extensions you would use 
-std=gnu++11 instead. 

> Furthermore, should I report this upstream ?

If versions of their code that they still support don't compile in C23 mode, 
yes. I think C and C++ programs should always use a -std flag to indicate the 
language version they are written for, so that they are not surprised by build 
failures when the default changes.

Reply via email to