[squid-dev] g++ 4.8.x and std::regex problems
squid3 at treenet.co.nz
Tue Nov 29 19:46:30 UTC 2016
On 29/11/2016 8:46 p.m., Christos Tsantilas wrote:
> On 29/11/2016 04:29 πμ, Amos Jeffries wrote:
>> Please note that GCC 4.8 is not capable of building correctly operating
>> Squid-4 either. So its not a matter of GCC 4.8 vs Squid.
> The 4.8 does not have any problem. I was doing all of my developments
> and tests using GCC-4.8 and never found a problem, an incompatibility
> something does not work well.
> On my side I upgraded my development system, however this is not
> something which can be done without spending a lot of hours. Also maybe
> required to upgrade 1-2 virtual machines I am using.
I'm thinking it might be useful to add a how-to in the release notes for
v4+ to make the compiler update easier. Would you be able to write that
now that you have gone through the process?
> We should define at least a warning period before applying such changes
> in squid.
It seems I mis-remembered the decision. It was not just to delay to v5,
but until the compiler situation was resolved
I'm starting the merge revert now. It will go into v5 when the build
tests pass (a few hours).
>> there anyway and probably already being linked to Squid as -lregex. The
>> other cases it is supposed to be implemented by something faster, like
>> libpcre. The benefits to Squid are that the API is standardized and we
>> dont have to care about which library is linked any more. In all cases
>> it should be using either the same library as before behind the STL API,
>> or something better.
> The regex library is small, it has a small number of API functions. And
> Personally I do not remember a case the regex causes problems.
> Also, my opinion is that if pcre is faster we should consider to use
> them. At least have it as a todo.
It is faster, but also has a different pattern syntax and API. So we
would need both a config directive to specify what syntax was in use and
a wrapper layer for portability.
Which is exactly what std::regex provides . Though I have not gone so
far as to add the config directive for changing the used syntax. It
makes a lot more sense to go through the transition pain once instead of
twice (GNURegex -> PCRE -> std::regex).
More information about the squid-dev