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
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: Azq2 at ya dot ru
New email:
PHP Version: OS:

 

 [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

Pull Requests

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-2025 The PHP Group
All rights reserved.
Last updated: Sat May 03 15:01:28 2025 UTC