comparison run/line_ending_unicode.d @ 1560:36bedfa079e6

D1 -> D2 : 2/N
author thomask
date Sun, 19 Aug 2007 19:15:01 +0000
parents ec6d35cccfb5
children
comparison
equal deleted inserted replaced
1559:ec5e144583ea 1560:36bedfa079e6
1 // encoding: utf-8
// line ending: unicode
int main(){
 try{
 assert(0);
 }catch(Object e){
 checkLineNumber(e);
 return 0;
 } 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==2);
 assert(string[start+1]=='5');
}
 1 // encoding: utf-8
// line ending: unicode
int main(){
 try{
 assert(0);
 }catch(Object e){
 checkLineNumber(e);
 return 0;
 } 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){
 string x=o.toString();
 
 int start;
 for(start=0; start<x.length; start++){if(x[start]=='('){break;}}

 int end;
 for(end=x.length-1; end>start; end--){if(x[end]==')'){break;} }

 assert(end-start==2);
 assert(x[start+1]=='5');
}