about summary refs log tree commit diff
path: root/compiler/rustc_parse
diff options
context:
space:
mode:
authorAleksey Kladov <aleksey.kladov@gmail.com>2020-09-03 15:22:07 +0200
committerAleksey Kladov <aleksey.kladov@gmail.com>2020-09-03 15:22:07 +0200
commit850c3219fb8659608eb62cd43eaee29e9e354379 (patch)
tree987c3cdc477cd3965b390b4f6d22f5e56e8b6f99 /compiler/rustc_parse
parent08deb863bdebfcbbb71c18acf903eca84f1df4e7 (diff)
downloadrust-850c3219fb8659608eb62cd43eaee29e9e354379.tar.gz
rust-850c3219fb8659608eb62cd43eaee29e9e354379.zip
Move jointness censoring to proc_macro
Proc-macro API currently exposes jointness in `Punct` tokens. That is,
`+` in `+one` is **non** joint.

Our lexer produces jointness info for all tokens, so we need to censor
it *somewhere*

Previously we did this in a lexer, but it makes more sense to do this
in a proc-macro server.
Diffstat (limited to 'compiler/rustc_parse')
-rw-r--r--compiler/rustc_parse/src/lexer/tokentrees.rs5
1 files changed, 1 insertions, 4 deletions
diff --git a/compiler/rustc_parse/src/lexer/tokentrees.rs b/compiler/rustc_parse/src/lexer/tokentrees.rs
index d5977ca3c7d..fb27ccfbd94 100644
--- a/compiler/rustc_parse/src/lexer/tokentrees.rs
+++ b/compiler/rustc_parse/src/lexer/tokentrees.rs
@@ -262,10 +262,7 @@ impl<'a> TokenTreesReader<'a> {
             }
             _ => {
                 let tt = TokenTree::Token(self.token.take());
-                let mut is_joint = self.bump();
-                if !self.token.is_op() {
-                    is_joint = NonJoint;
-                }
+                let is_joint = self.bump();
                 Ok((tt, is_joint))
             }
         }