changeset 50:6e5067190fea

fixed complex test cases entries
author thomask
date Sat, 16 Oct 2004 18:11:24 +0000
parents 1a7241967792
children fca2783c3c8c
files complex/command_line/complex.mak complex/debug/complex.mak complex/debug/debug_02.d complex/private_import/a.d complex/private_import/b.d complex/private_import/c.d complex/private_import/complex.mak run/line_token_01.d
diffstat 8 files changed, 73 insertions(+), 43 deletions(-) [+]
line wrap: on
line diff
--- a/complex/command_line/complex.mak	Sat Oct 16 16:55:42 2004 +0000
+++ b/complex/command_line/complex.mak	Sat Oct 16 18:11:24 2004 +0000
@@ -36,6 +36,8 @@
 	complex/command_line/command_line_debug_03__-debug=abc__-od$(OBJ_DIR)__-of$(OBJ_DIR)/dummy.xxx.cmdrun \
 	complex/command_line/command_line_debug_04__-debug=123456789__-od$(OBJ_DIR)__-of$(OBJ_DIR)/dummy.xxx.cmdrun \
 	complex/command_line/command_line_debug_05__-debug=1A__-od$(OBJ_DIR)__-of$(OBJ_DIR)/dummy.xxx.cmdfail \
+	complex/command_line/command_line_debug_06__-debug123__-od$(OBJ_DIR)__-of$(OBJ_DIR)/dummy.xxx.cmdfail \
+	complex/command_line/command_line_debug_07__-debugABC__-od$(OBJ_DIR)__-of$(OBJ_DIR)/dummy.xxx.cmdfail \
 	complex/command_line/command_line_null_source_01__-c.cmdnullfail \
 	complex/command_line/command_line_null_source_02__.cmdnullfail \
 	complex/command_line/command_line_null_source_03__-c__"".cmdnullfail \
--- a/complex/debug/complex.mak	Sat Oct 16 16:55:42 2004 +0000
+++ b/complex/debug/complex.mak	Sat Oct 16 18:11:24 2004 +0000
@@ -25,7 +25,7 @@
 	@echo "don't invoke this file directly, instead use DStress' root Makefile with the target \"complex\" or \"all\""
 
 # this will be called by root's "all" / "complex" target
-complex/debug/$(complex_done) : complex/debug/debug_01.$(ext_run) complex/debug/debug_02.$(ext_run) complex/debug/debug_03.$(ext_run) complex/debug/debug_04.$(ext_nocompile) complex/debug/debug_05.$(ext_nocompile)
+complex/debug/$(complex_done) : complex/debug/debug_01.$(ext_run) complex/debug/debug_02.$(ext_run) complex/debug/debug_03.$(ext_run)
 	
 complex/debug/debug_01.$(ext_run) :  complex/debug/debug_01.$(ext_source)
 	$(eval z_name = $(subst .$(ext_run),,$@))
--- a/complex/debug/debug_02.d	Sat Oct 16 16:55:42 2004 +0000
+++ b/complex/debug/debug_02.d	Sat Oct 16 18:11:24 2004 +0000
@@ -2,7 +2,7 @@
 	int i=0;
 	assert(i==0);
 	debug(1){
-		assert(i==0);
+		assert(0);
 	}
 	debug(2){
 		i++;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/complex/private_import/a.d	Sat Oct 16 18:11:24 2004 +0000
@@ -0,0 +1,3 @@
+module a;
+
+public int fooA;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/complex/private_import/b.d	Sat Oct 16 18:11:24 2004 +0000
@@ -0,0 +1,5 @@
+module b;
+
+private import a;
+
+int fooB = fooA + 3;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/complex/private_import/c.d	Sat Oct 16 18:11:24 2004 +0000
@@ -0,0 +1,5 @@
+module c;
+
+import b;
+
+int fooC = fooA;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/complex/private_import/complex.mak	Sat Oct 16 18:11:24 2004 +0000
@@ -0,0 +1,56 @@
+# GnuMakefile for DStress http://dmd.kuehne.cn/dstress.html
+# Copyright (C) 2004 Thomas Kuehne
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+#
+
+.PHONY: \
+	complex/private_import/warning \
+	complex/private_import/$(complex_done) \
+	complex/private_import/clean
+
+complex/private_import/warning :
+	@echo "don't invoke this file directly, instead use DStress' root Makefile with the target \"complex\" or \"all\""
+
+# the actual target, will be called by root's "all" / "complex" target
+complex/private_import/$(complex_done) : complex/private_import/private_import_01.done complex/private_import/private_import_02.done
+
+#
+# compile only the 3rd file
+#
+complex/private_import/private_import_01.done : complex/private_import/a.$(ext_source) complex/private_import/b.$(ext_source) complex/private_import/c.$(ext_source) complex/private_import/$(complex_todo)
+	$(eval z_name = $(subst .done,,$@))
+	@if $(DMD) $(DFLAGS) -c -Icomplex/private_import/ -ofcomplex/private_import/c.$(ext_compile) complex/private_import/c.$(ext_source) $(to_log); then \
+		$(ECHO) "XPASS: $(z_name)"; \
+	else \
+		$(ECHO) "FAIL:  $(z_name)"; $(TOUCH) $@; \
+	fi
+
+#
+# compile all 3 files at the same time
+#
+complex/private_import/private_import_02.done : complex/private_import/a.$(ext_source) complex/private_import/b.$(ext_source) complex/private_import/c.$(ext_source) complex/private_import/$(complex_todo)
+	$(eval z_name = $(subst .done,,$@))
+	@if $(DMD) $(DFLAGS) -c -od$(OBJ_DIR) complex/private_import/a.$(ext_source) complex/private_import/b.$(ext_source) complex/private_import/c.$(ext_source) $(to_log); then \
+		$(ECHO) "XPASS: $(z_name)"; \
+	else \
+		$(ECHO) "FAIL:  $(z_name)"; $(TOUCH) $@; \
+	fi
+
+
+# this will be called by root's "clean" target
+complex/private_import/clean :
+	$(RM) complex/private_import/$(complex_done) complex/private_import/?*.$(ext_compile)  complex/private_import/private_import_??.done
+
--- a/run/line_token_01.d	Sat Oct 16 16:55:42 2004 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-int main(){
-	try{
-		#line -2
-		assert(0);
-	}catch(Exception e){
-		checkLineNumber(e);
-		return 0;
-	}catch(Error e){
-		checkLineNumber(e);
-		return 0;
-	}
-
-	assert(-1);
-	return 1;
-}
-
-/* 
- * @WARNING@: this code depends on the phobos implementation.
- * char[]s returned by wrong assertions have to look like:
- *	 "blah blah (linenumber) blah blah"
- */
-void checkLineNumber(Object o){
-	char[] string=o.toString();
-	
-	int start;
-	for(start=0; start<string.length; start++){
-		if(string[start]=='('){
-			break;
-		}
-	}
-
-	int end;
-	for(end=string.length-1; end>start; end--){
-		if(string[end]==')'){
-			break;
-		}
-	}
-
-	assert(end-start==3);
-	assert(string[start+1 .. start+3]=="-2");
-}