From 3c5cfdf2e7e53967eb330928aaeedfbb8ea1db4d Mon Sep 17 00:00:00 2001 From: Philipp Brüschweiler Date: Thu, 4 Jul 2013 19:51:11 +0200 Subject: libsyntax: fix infinite loop when recursively including modules Fixes #7276 --- src/test/compile-fail/circular_modules_hello.rs | 17 +++++++++++++++++ src/test/compile-fail/circular_modules_main.rs | 20 ++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 src/test/compile-fail/circular_modules_hello.rs create mode 100644 src/test/compile-fail/circular_modules_main.rs (limited to 'src/test') diff --git a/src/test/compile-fail/circular_modules_hello.rs b/src/test/compile-fail/circular_modules_hello.rs new file mode 100644 index 00000000000..261fa489f61 --- /dev/null +++ b/src/test/compile-fail/circular_modules_hello.rs @@ -0,0 +1,17 @@ +// Copyright 2013 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// xfail-test: this is an auxiliary file for circular-modules-main.rs + +mod circular_modules_main; + +pub fn say_hello() { + println(circular_modules_main::hi_str()); +} diff --git a/src/test/compile-fail/circular_modules_main.rs b/src/test/compile-fail/circular_modules_main.rs new file mode 100644 index 00000000000..06b5854f42c --- /dev/null +++ b/src/test/compile-fail/circular_modules_main.rs @@ -0,0 +1,20 @@ +// Copyright 2013 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + + +mod circular_modules_hello; //~ERROR: circular modules + +pub fn hi_str() -> ~str { + ~"Hi!" +} + +fn main() { + circular_modules_hello::say_hello(); +} -- cgit 1.4.1-3-g733a5