public inbox for gcc-rust@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] Remove raw string and raw byte string references from ast and hir
@ 2021-09-27 22:08 Mark Wielaard
  0 siblings, 0 replies; only message in thread
From: Mark Wielaard @ 2021-09-27 22:08 UTC (permalink / raw)
  To: gcc-rust; +Cc: Mark Wielaard

Raw strings and raw byte strings are simply different ways to
create string and byte string literals. Only the lexer cares
how those literals are constructed and which escapes are used
to construct them. The parser and hir simply see strings or
byte strings.
---

https://code.wildebeest.org/git/user/mjw/gccrs/commit/?h=no-raw-byte-string

 gcc/rust/ast/rust-ast.h            | 2 --
 gcc/rust/ast/rust-item.h           | 2 +-
 gcc/rust/hir/rust-ast-lower-expr.h | 6 ------
 gcc/rust/hir/tree/rust-hir.h       | 2 --
 gcc/rust/parse/rust-parse-impl.h   | 3 ---
 5 files changed, 1 insertion(+), 14 deletions(-)

diff --git a/gcc/rust/ast/rust-ast.h b/gcc/rust/ast/rust-ast.h
index 96b8da40dd7..b0738a26b6c 100644
--- a/gcc/rust/ast/rust-ast.h
+++ b/gcc/rust/ast/rust-ast.h
@@ -259,10 +259,8 @@ public:
   {
     CHAR,
     STRING,
-    RAW_STRING,
     BYTE,
     BYTE_STRING,
-    RAW_BYTE_STRING,
     INT,
     FLOAT,
     BOOL
diff --git a/gcc/rust/ast/rust-item.h b/gcc/rust/ast/rust-item.h
index 7a34144f0d3..c7c8b8f5692 100644
--- a/gcc/rust/ast/rust-item.h
+++ b/gcc/rust/ast/rust-item.h
@@ -32,7 +32,7 @@ class MacroInvocationSemi;
 // TODO: inline?
 /*struct AbiName {
     std::string abi_name;
-    // Technically is meant to be STRING_LITERAL or RAW_STRING_LITERAL
+    // Technically is meant to be STRING_LITERAL
 
   public:
     // Returns whether abi name is empty, i.e. doesn't exist.
diff --git a/gcc/rust/hir/rust-ast-lower-expr.h b/gcc/rust/hir/rust-ast-lower-expr.h
index ff4c181d0e2..1d0b6cc6977 100644
--- a/gcc/rust/hir/rust-ast-lower-expr.h
+++ b/gcc/rust/hir/rust-ast-lower-expr.h
@@ -332,18 +332,12 @@ public:
       case AST::Literal::LitType::STRING:
 	type = HIR::Literal::LitType::STRING;
 	break;
-      case AST::Literal::LitType::RAW_STRING:
-	type = HIR::Literal::LitType::RAW_STRING;
-	break;
       case AST::Literal::LitType::BYTE:
 	type = HIR::Literal::LitType::BYTE;
 	break;
       case AST::Literal::LitType::BYTE_STRING:
 	type = HIR::Literal::LitType::BYTE_STRING;
 	break;
-      case AST::Literal::LitType::RAW_BYTE_STRING:
-	type = HIR::Literal::LitType::RAW_BYTE_STRING;
-	break;
       case AST::Literal::LitType::INT:
 	type = HIR::Literal::LitType::INT;
 	break;
diff --git a/gcc/rust/hir/tree/rust-hir.h b/gcc/rust/hir/tree/rust-hir.h
index 8ba6308fdea..5a64662efbc 100644
--- a/gcc/rust/hir/tree/rust-hir.h
+++ b/gcc/rust/hir/tree/rust-hir.h
@@ -45,10 +45,8 @@ public:
   {
     CHAR,
     STRING,
-    RAW_STRING,
     BYTE,
     BYTE_STRING,
-    RAW_BYTE_STRING,
     INT,
     FLOAT,
     BOOL
diff --git a/gcc/rust/parse/rust-parse-impl.h b/gcc/rust/parse/rust-parse-impl.h
index 8cce9332350..c2d3720b47d 100644
--- a/gcc/rust/parse/rust-parse-impl.h
+++ b/gcc/rust/parse/rust-parse-impl.h
@@ -7556,8 +7556,6 @@ Parser<ManagedTokenSource>::parse_literal_expr (AST::AttrVec outer_attrs)
       literal_value = t->get_str ();
       lexer.skip_token ();
       break;
-    // case RAW_STRING_LITERAL:
-    // put here if lexer changes to have these
     case BYTE_CHAR_LITERAL:
       type = AST::Literal::BYTE;
       literal_value = t->get_str ();
@@ -7568,7 +7566,6 @@ Parser<ManagedTokenSource>::parse_literal_expr (AST::AttrVec outer_attrs)
       literal_value = t->get_str ();
       lexer.skip_token ();
       break;
-    // case RAW_BYTE_STRING_LITERAL:
     case INT_LITERAL:
       type = AST::Literal::INT;
       literal_value = t->get_str ();
-- 
2.32.0


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-09-27 22:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-27 22:08 [PATCH] Remove raw string and raw byte string references from ast and hir Mark Wielaard

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).