[Bug c++/58708] string literal operator templates broken

2014-01-30 Thread rsandifo at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

--- Comment #11 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
---
Author: rsandifo
Date: Thu Jan 30 19:44:06 2014
New Revision: 207320

URL: http://gcc.gnu.org/viewcvs?rev=207320root=gccview=rev
Log:
gcc/cp/
PR c++/58708
* parser.c (make_string_pack): Use double_int::from_buffer.

Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c


[Bug c++/58708] string literal operator templates broken

2013-11-02 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |4.9.0

--- Comment #10 from Paolo Carlini paolo.carlini at oracle dot com ---
Fixed.


[Bug c++/58708] string literal operator templates broken

2013-11-01 Thread emsr at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

--- Comment #9 from emsr at gcc dot gnu.org ---
Author: emsr
Date: Fri Nov  1 23:00:48 2013
New Revision: 204305

URL: http://gcc.gnu.org/viewcvs?rev=204305root=gccview=rev
Log:

gcc/cp:

2013-11-01  Edward Smith-Rowland  3dw...@verizon.net

PR c++/58708
* parser.c (make_string_pack): Discover non-const type and size
of character and build parm pack with correct type and chars.


gcc/testsuite:

2013-11-01  Edward Smith-Rowland  3dw...@verizon.net

PR c++/58708
* g++.dg/cpp1y/pr58708.C: New.



Added:
trunk/gcc/testsuite/g++.dg/cpp1y/pr58708.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog


[Bug c++/58708] string literal operator templates broken

2013-10-14 Thread mustrumr97 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

--- Comment #3 from Hristo Venev mustrumr97 at gmail dot com ---
#include iostream
templatetypename CharT, CharT... str
void operator_foo(){
   CharT arr[]{str...};
   for(CharT i:arr) std::cout(int)i' ';
}
int main(){
   U\x1\x10001\x10002_foo;
}

Current output: 0 0 1 0 1 0 1 0 2 0 1 0 0 0 0 
Expected output: 65536 65537 65538 
Without the \0, char32_t's instead of bytes.

The author of the paper intended CharT to be unqualified.


[Bug c++/58708] string literal operator templates broken

2013-10-14 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-10-14
 Ever confirmed|0   |1

--- Comment #4 from Paolo Carlini paolo.carlini at oracle dot com ---
Confirmed.


[Bug c++/58708] string literal operator templates broken

2013-10-14 Thread 3dw4rd at verizon dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

--- Comment #5 from Ed Smith-Rowland 3dw4rd at verizon dot net ---
The const qualification of the first parm and the number of elements are wrong.
 I'm testing a patch.


[Bug c++/58708] string literal operator templates broken

2013-10-13 Thread mustrumr97 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

--- Comment #1 from Hristo Venev mustrumr97 at gmail dot com ---
Obviously bugzilla doesn't like unicode.

U\x1\x10001\x10002
current: const char32_t, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02,
0x00, 0x01, 0x00

expected: char32_t, 0x1, 0x10001, 0x10002


[Bug c++/58708] string literal operator templates broken

2013-10-13 Thread 3dw4rd at verizon dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58708

--- Comment #2 from Ed Smith-Rowland 3dw4rd at verizon dot net ---
Hristo,
Thanks for finishing your thought.

So if i have:

templatetypename CharT, CharT... str
  void
  operator_foo
  {
ChatT arr[]{str...};
  }

U\x1\x10001\x10002_foo;

I should see this right?