Add enum variants to the type namespace
Change to resolve and update compiler and libs for uses. [breaking-change] Enum variants are now in both the value and type namespaces. This means that if you have a variant with the same name as a type in scope in a module, you will get a name clash and thus an error. The solution is to either rename the type or the variant.
This commit is contained in:
parent
af3889f697
commit
ce0907e46e
72 changed files with 489 additions and 457 deletions
|
|
@ -13,7 +13,7 @@
|
|||
use lint::{LintPassObject, LintId, Lint};
|
||||
|
||||
use syntax::ext::base::{SyntaxExtension, NamedSyntaxExtension, NormalTT};
|
||||
use syntax::ext::base::{IdentTT, LetSyntaxTT, ItemDecorator, ItemModifier};
|
||||
use syntax::ext::base::{IdentTT, LetSyntaxTT, Decorator, Modifier};
|
||||
use syntax::ext::base::{MacroExpanderFn};
|
||||
use syntax::codemap::Span;
|
||||
use syntax::parse::token;
|
||||
|
|
@ -61,8 +61,8 @@ impl Registry {
|
|||
self.syntax_exts.push((name, match extension {
|
||||
NormalTT(ext, _) => NormalTT(ext, Some(self.krate_span)),
|
||||
IdentTT(ext, _) => IdentTT(ext, Some(self.krate_span)),
|
||||
ItemDecorator(ext) => ItemDecorator(ext),
|
||||
ItemModifier(ext) => ItemModifier(ext),
|
||||
Decorator(ext) => Decorator(ext),
|
||||
Modifier(ext) => Modifier(ext),
|
||||
// there's probably a nicer way to signal this:
|
||||
LetSyntaxTT(_, _) => fail!("can't register a new LetSyntax!"),
|
||||
}));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue