Skip to content

Commit a4dbdfe

Browse files
committed
Workaround for rustc ICE
This is the specific ICE issue: rust-lang/rust#24644
1 parent 1eaf332 commit a4dbdfe

File tree

11 files changed

+26
-33
lines changed

11 files changed

+26
-33
lines changed

base/and.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@
1414

1515
use super::{Expression, ParseState, ParseResult};
1616

17-
macro_rules! and( ( $ex:expr ) => ( {
18-
use base;
19-
&base::And::new( $ex ) } ); );
17+
macro_rules! and( ( $ex:expr ) => ( &base::And::new( $ex ) ); );
2018

2119
pub struct And<'a> {
2220
expr: &'a ( Expression + 'a )
@@ -43,6 +41,7 @@ impl<'b> Expression for And<'b> {
4341

4442
#[cfg(test)]
4543
mod tests {
44+
use base;
4645
use base::{ParseResult, Expression};
4746

4847
#[test]

base/char_class.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@
1414
use base::unicode::{bytesFollowing, readCodepoint};
1515
use super::{Expression, ParseState, ParseResult};
1616

17-
macro_rules! class( ( $ex:expr ) => ( {
18-
use base;
19-
&base::CharClass::new( $ex.as_bytes() ) } ) );
17+
macro_rules! class( ( $ex:expr ) => (
18+
&base::CharClass::new( $ex.as_bytes() ) ) );
2019

2120

2221
fn toU32Vector( input: &[u8] ) -> Vec<u32> {
@@ -135,6 +134,7 @@ impl Expression for CharClass {
135134

136135
#[cfg(test)]
137136
mod tests {
137+
use base;
138138
use base::{Node, Data, ParseResult, Expression, ParseState};
139139
use base::test_utils::ToParseState;
140140
use base::unicode::bytesFollowing;

base/fuse.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! fuse( ( $ex:expr ) => ( {
17-
use base;
18-
&base::Fuse::new( $ex ) } ); );
16+
macro_rules! fuse( ( $ex:expr ) => ( &base::Fuse::new( $ex ) ); );
1917

2018
pub struct Fuse<'a> {
2119
expr: &'a ( Expression + 'a )
@@ -46,6 +44,7 @@ impl<'b> Expression for Fuse<'b> {
4644

4745
#[cfg(test)]
4846
mod tests {
47+
use base;
4948
use base::{Node, Data, ParseResult, Expression};
5049

5150
#[test]

base/literal.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,8 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! lit( ( $ex:expr ) => ( {
17-
use base;
18-
&base::Literal::new( $ex.as_bytes() ) } ) );
16+
macro_rules! lit( ( $ex:expr ) => (
17+
&base::Literal::new( $ex.as_bytes() ) ) );
1918

2019

2120
pub struct Literal {
@@ -45,6 +44,7 @@ impl Expression for Literal {
4544

4645
#[cfg(test)]
4746
mod tests {
47+
use base;
4848
use base::{Node, Data, ParseResult, ParseState, Expression};
4949

5050
#[test]

base/not.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! not( ( $ex:expr ) => ( {
17-
use base;
18-
&base::NotEx::new($ex) } ); );
16+
macro_rules! not( ( $ex:expr ) => ( &base::NotEx::new($ex) ); );
1917

2018
pub struct NotEx<'a> {
2119
expr: &'a ( Expression + 'a )
@@ -42,6 +40,7 @@ impl<'b> Expression for NotEx<'b> {
4240

4341
#[cfg(test)]
4442
mod tests {
43+
use base;
4544
use base::{ParseResult, Expression};
4645

4746
#[test]

base/option.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! opt( ( $ex:expr ) => ( {
17-
use base;
18-
&base::OptionEx::new( $ex ) } ); );
16+
macro_rules! opt( ( $ex:expr ) => ( &base::OptionEx::new( $ex ) ); );
1917

2018
pub struct OptionEx<'a> {
2119
expr: &'a ( Expression + 'a )
@@ -42,6 +40,7 @@ impl<'b> Expression for OptionEx<'b> {
4240

4341
#[cfg(test)]
4442
mod tests {
43+
use base;
4544
use base::{Node, ParseResult, Expression, Data};
4645

4746
#[test]

base/or.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,8 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! or( ( $( $ex:expr ),* ) => ( {
17-
use base;
18-
&base::Or::new( &[ $( $ex ),* ] ) } ); );
16+
macro_rules! or( ( $( $ex:expr ),* ) => (
17+
&base::Or::new( &[ $( $ex ),* ] ) ); );
1918

2019
pub struct Or<'a> {
2120
exprs: &'a [&'a (Expression + 'a)]
@@ -45,6 +44,7 @@ impl<'b> Expression for Or<'b> {
4544

4645
#[cfg(test)]
4746
mod tests {
47+
use base;
4848
use base::{Node, ParseResult, Expression, Data};
4949

5050
#[test]

base/plus.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! plus( ( $ex:expr ) => ( {
17-
use base;
18-
&base::Plus::new( $ex ) } ); );
16+
macro_rules! plus( ( $ex:expr ) => ( &base::Plus::new( $ex ) ); );
1917

2018
pub struct Plus<'a> {
2119
expr: &'a ( Expression + 'a )
@@ -56,6 +54,7 @@ impl<'b> Expression for Plus<'b> {
5654

5755
#[cfg(test)]
5856
mod tests {
57+
use base;
5958
use base::{Node, ParseResult, Expression, Data};
6059

6160
#[test]

base/sequence.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,8 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! seq( ( $( $ex:expr ),* ) => ( {
17-
use base;
18-
&base::Sequence::new( &[ $( $ex ),* ] ) } ); );
16+
macro_rules! seq( ( $( $ex:expr ),* ) => (
17+
&base::Sequence::new( &[ $( $ex ),* ] ) ); );
1918

2019
pub struct Sequence<'a> {
2120
exprs: &'a [&'a (Expression + 'a)]
@@ -49,6 +48,7 @@ impl<'b> Expression for Sequence<'b> {
4948

5049
#[cfg(test)]
5150
mod tests {
51+
use base;
5252
use base::{Node, ParseResult, Expression, Data};
5353

5454
#[test]

base/star.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult};
1515

16-
macro_rules! star( ( $ex:expr ) => ( {
17-
use base;
18-
&base::Star::new( $ex ) } ); );
16+
macro_rules! star( ( $ex:expr ) => ( &base::Star::new( $ex ) ); );
1917

2018
pub struct Star<'a> {
2119
expr: &'a ( Expression + 'a )
@@ -49,6 +47,7 @@ impl<'b> Expression for Star<'b> {
4947

5048
#[cfg(test)]
5149
mod tests {
50+
use base;
5251
use base::{Node, ParseResult, Expression, Data};
5352

5453
#[test]

base/wrap.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@
1313
// limitations under the License.
1414
use super::{Expression, ParseState, ParseResult, Rule};
1515

16-
macro_rules! ex( ( $ex:expr ) => ( {
17-
use base;
18-
&base::WrapEx{ rule: $ex } } ); );
16+
macro_rules! ex( ( $ex:expr ) => ( &base::WrapEx{ rule: $ex } ); );
1917

2018
pub struct WrapEx {
2119
pub rule: Rule
@@ -32,6 +30,7 @@ impl Expression for WrapEx {
3230

3331
#[cfg(test)]
3432
mod tests {
33+
use base;
3534
use base::{ParseResult, Expression, ParseState};
3635
use super::{WrapEx};
3736

0 commit comments

Comments
 (0)