summaryrefslogtreecommitdiffstats
path: root/src/test/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs')
-rw-r--r--src/test/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/test/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs b/src/test/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs
new file mode 100644
index 000000000..802be7f5a
--- /dev/null
+++ b/src/test/ui/lexer/lexer-crlf-line-endings-string-literal-doc-comment.rs
@@ -0,0 +1,38 @@
+// run-pass
+// ignore-tidy-cr
+// ignore-tidy-cr (repeated again because of tidy bug)
+// license is ignored because tidy can't handle the CRLF here properly.
+
+// N.B., this file needs CRLF line endings. The .gitattributes file in
+// this directory should enforce it.
+
+// ignore-pretty issue #37195
+
+/// Doc comment that ends in CRLF
+pub fn foo() {}
+
+/** Block doc comment that
+ * contains CRLF characters
+ */
+pub fn bar() {}
+
+fn main() {
+ let s = "string
+literal";
+ assert_eq!(s, "string\nliteral");
+
+ let s = "literal with \
+ escaped newline";
+ assert_eq!(s, "literal with escaped newline");
+
+ let s = r"string
+literal";
+ assert_eq!(s, "string\nliteral");
+ let s = br"byte string
+literal";
+ assert_eq!(s, "byte string\nliteral".as_bytes());
+
+ // validate that our source file has CRLF endings
+ let source = include_str!("lexer-crlf-line-endings-string-literal-doc-comment.rs");
+ assert!(source.contains("string\r\nliteral"));
+}