// RUN: clang -emit-llvm -std=c++0x %s
// FIXME: how to test that the strings are correct? this should emit:
//@.str = internal constant [5 x i8] c"test\00"		; <[5 x i8]*> [#uses=1]
//@s1 = global i8* getelementptr ([5 x i8]* @.str, i32 0, i32 0), align 4		; <i8**> [#uses=0]
//@s2 = global i8* getelementptr ([5 x i8]* @.str, i32 0, i32 0), align 4		; <i8**> [#uses=0]
//@s3 = global i8* getelementptr ([5 x i8]* @.str, i32 0, i32 0), align 4		; <i8**> [#uses=0]
//@.str1 = internal constant [14 x i8] c"\5Ct\5C\5Ce]azertst\00"		; <[14 x i8]*> [#uses=1]
//@s4 = global i8* getelementptr ([14 x i8]* @.str1, i32 0, i32 0), align 4		; <i8**> [#uses=0]
//@.str2 = internal constant [30 x i8] c"a\0D\0Amultiline\0D\0Astring\0D\0Aliteral\00"		; <[30 x i8]*> [#uses=1]
//@s5 = global i8* getelementptr ([30 x i8]* @.str2, i32 0, i32 0), align 4		; <i8**> [#uses=0]

const char* s1 = "test";
const char* s2 = R"[test]";
const char* s3 = R"azerty[test]azerty";
const char* s4 = R"azerty[\t\\e]azertst]azerty";
const char* s5 = R"[\
a
multiline
string
literal]";
const char* s6 = LR"[test]";

// expected error:
// const char* err1 = R"azerty[test]azetry";

