public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* cpp again
@ 2014-03-01 15:34 phi gcc
  2014-03-01 19:27 ` Prathamesh Kulkarni
  0 siblings, 1 reply; 3+ messages in thread
From: phi gcc @ 2014-03-01 15:34 UTC (permalink / raw)
  To: gcc-help

Hi All,

I narrowed down a problem that break my builds...

C4N1$ cat c.c
#define L "cd"
s="ab" L "ef";
s="ab"L "ef";
s="ab" L"ef";
s="ab"L"ef";

C4N1$ cc -E c.c
# 1 "c.c"
# 1 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 1 "<command-line>" 2
# 1 "c.c"

s="ab" "cd" "ef";
s="ab""cd" "ef";
s="ab" L"ef";
s="ab"L"ef";

C4N1$

Why the last 2 L are not expansed ? other compilers (non linux) do
expand all of them.

Thanx on advance
Cheers,
Phi

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: cpp again
  2014-03-01 15:34 cpp again phi gcc
@ 2014-03-01 19:27 ` Prathamesh Kulkarni
  2014-03-01 19:45   ` phi gcc
  0 siblings, 1 reply; 3+ messages in thread
From: Prathamesh Kulkarni @ 2014-03-01 19:27 UTC (permalink / raw)
  To: phi gcc; +Cc: gcc-help

On Sat, Mar 1, 2014 at 9:04 PM, phi gcc <phi.gcc@gmail.com> wrote:
> Hi All,
>
> I narrowed down a problem that break my builds...
>
> C4N1$ cat c.c
> #define L "cd"
> s="ab" L "ef";
> s="ab"L "ef";
> s="ab" L"ef";
> s="ab"L"ef";
String prefixed with L is a wide string literal, in your last two
examples it's L"ef"
see n1570 section 6.4.5 3rd point:
A character string literal is a sequence of zero or more multibyte
characters enclosed in
double-quotes, as in "xyz". A UTF -8 string literal is the same,
except prefixed by u8.
A wide string literal is the same, except prefixed by the letter L, u, or U.
>
> C4N1$ cc -E c.c
> # 1 "c.c"
> # 1 "<command-line>"
> # 1 "/usr/include/stdc-predef.h" 1 3 4
> # 1 "<command-line>" 2
> # 1 "c.c"
>
> s="ab" "cd" "ef";
> s="ab""cd" "ef";
> s="ab" L"ef";
> s="ab"L"ef";
>
> C4N1$
>
> Why the last 2 L are not expansed ? other compilers (non linux) do
> expand all of them.
>
> Thanx on advance
> Cheers,
> Phi

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: cpp again
  2014-03-01 19:27 ` Prathamesh Kulkarni
@ 2014-03-01 19:45   ` phi gcc
  0 siblings, 0 replies; 3+ messages in thread
From: phi gcc @ 2014-03-01 19:45 UTC (permalink / raw)
  To: Prathamesh Kulkarni; +Cc: gcc-help

Hi Prathamesh,

Ouch I lost sight of the L :(
Using Y make it works :)


Thanx tons
Cheers,
Phi

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-03-01 19:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-01 15:34 cpp again phi gcc
2014-03-01 19:27 ` Prathamesh Kulkarni
2014-03-01 19:45   ` phi gcc

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).