php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #65217 "unable to find string literal operator" with C++11 option
Submitted: 2013-07-07 14:55 UTC Modified: 2013-07-07 21:35 UTC
From: Azq2 at ya dot ru Assigned: ab (profile)
Status: Closed Package: Compile Failure
PHP Version: 5.4.17 OS: Ubuntu 13.04
Private report: No CVE-ID: None
 [2013-07-07 14:55 UTC] Azq2 at ya dot ru
Description:
------------
I can not compile an extension using C + +11.
An error error: unable to find string literal operator 'operator"" name'
What would fix it - you need to add spaces in the concatenation of the macro 
ZEND_NS_NAME.
That is, here it is:
#define ZEND_NS_NAME(ns, name) ns"\\"name

Replace this:
#define ZEND_NS_NAME(ns, name) ns "\\" name




// Russian (original): 
Не могу скомпилировать расширение, используя C++11. 
Возникает ошибка: error: unable to find string literal operator 'operator"" 
name'
Что бы её исправить - нужно добавить пробелы в конкатенацию в макросе 
ZEND_NS_NAME. 
Т.е. вот это: 
#define ZEND_NS_NAME(ns, name) ns"\\"name

Заменить на это: 
#define ZEND_NS_NAME(ns, name) ns "\\" name


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2013-07-07 21:35 UTC] ab@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: ab
 [2013-07-07 21:35 UTC] ab@php.net
This issue was actually fixed with this commit

http://git.php.net/?p=php-
src.git;a=commitdiff;h=31468401b790e439734cb2ac8de928adaad74a85

about half a year ago. That has to be around 5.4.12 or like that. Sure you use 
5.4.17, not earlier?
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue May 07 20:01:32 2024 UTC