fixed a lexer bug of eating up one more character when reading a single-letter identifier C, S, M followed by a non-identifier letter in get_ident().
changed various test programs according to syntax changes
This commit is contained in:
		| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	#declare(#classinst) t1 t2. | ||||
| 	var(#classinst) t1, t2. | ||||
| 	method(#class) xxxx | ||||
| 	{ | ||||
| 		| g1 g2 | | ||||
|  | ||||
| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	#declare(#classinst) t1 t2. | ||||
| 	var(#classinst) t1, t2. | ||||
| 	method(#class) xxxx | ||||
| 	{ | ||||
| 		| g1 g2 | | ||||
|  | ||||
| @ -29,14 +29,15 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	#declare(#classinst) t1 t2. | ||||
| 	var(#classinst) t1, t2. | ||||
|  | ||||
| 	method(#class) xxxx | ||||
| 	{ | ||||
| 		| g1 g2 | | ||||
|  | ||||
| @ -29,14 +29,15 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	#declare(#classinst) t1 t2. | ||||
| 	var(#classinst) t1, t2. | ||||
|  | ||||
| 	method(#class) xxxx | ||||
| 	{ | ||||
| 		| g1 g2 | | ||||
|  | ||||
| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) t1 t2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) t1, t2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	dcl(#class) C B A. | ||||
| 	var(#class) C, B, A. | ||||
|  | ||||
| 	method getTrue | ||||
| 	{ | ||||
| @ -116,11 +116,11 @@ class MyObject(TestObject) | ||||
|  | ||||
| 		#[ 1 2 3] dump. | ||||
| 		#[ 4 5 6] dump. | ||||
| 	#(abc:def: 2 'string is good' 3 4 (5 6) (7 (8 9)) 10) dump. | ||||
| 		#([] #[]) dump. | ||||
| 	#(#abc:def: 2 'string is good' 3 4 #(5 6) #(7 #(8 9)) 10) dump. | ||||
| 		#(#[] #[]) dump. | ||||
|  | ||||
|  | ||||
| 	a := #(abc:def: -2 'string is good' 3 #[2 3 4] 4 (5 6) (7 (8 [4 56] 'hello' 9)) 10 -93952 self true false nil thisContext super). | ||||
| 	a := #(#abc:def: -2 'string is good' 3 #[2 3 4] 4 #(5 6) #(7 #(8 #[4 56] 'hello' 9)) 10 -93952 #self true false nil #thisContext #super). | ||||
| 	a at: 3 put: 'hello world'; dump. | ||||
|  | ||||
|  | ||||
| @ -224,10 +224,10 @@ class MyObject(TestObject) | ||||
| 		[self getTen] value dump. | ||||
| 	} | ||||
|  | ||||
| 	method(#class) abc | ||||
| 	(*method(#class) abc | ||||
| 	{ | ||||
| 		<primitive: #snd_open> | ||||
| 	} | ||||
| 	}*) | ||||
|  | ||||
| 	method(#class) a: a b: b c: c | ||||
| 	{ | ||||
| @ -441,16 +441,16 @@ PROCESS TESTING | ||||
| '====================' dump. | ||||
|  | ||||
| [ :a :b | a dump. b dump. a := 20.  b := [ a + 20 ]. b value.] value dump.  ## not sufficient arguments. it must fail | ||||
| "[ :a :b | a dump. b dump. a := 20.  b := [ a + 20 ]. b value.] on: Exception do: [:ex | 'Exception' dump]." | ||||
| ##[ :a :b | a dump. b dump. a := 20.  b := [ a + 20 ]. b value.] on: Exception do: [:ex | 'Exception' dump]. | ||||
|  | ||||
| " | ||||
| (* | ||||
| 		FFI isNil dump. | ||||
| 		FFI notNil dump. | ||||
| 		nil isNil dump. | ||||
| 		nil notNil dump. | ||||
| 		nil class dump. | ||||
| 		nil class class class dump. | ||||
| " | ||||
| *) | ||||
| 	} | ||||
| } | ||||
|  | ||||
|  | ||||
| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) t1 t2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) t1, t2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	dcl(#class) C B A. | ||||
| 	var(#class) C, B, A. | ||||
|  | ||||
| 	method getTrue | ||||
| 	{ | ||||
|  | ||||
| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) t1 t2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) t1, t2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	dcl(#class) C B A. | ||||
| 	var(#class) C, B, A. | ||||
|  | ||||
| 	method getTrue | ||||
| 	{ | ||||
| @ -65,11 +65,11 @@ class MyObject(TestObject) | ||||
| 	{ | ||||
| 		| p p2 | | ||||
|                 'START OF MAIN' dump. | ||||
|  		##p := [ :a :b :c :d | a dump. b dump. (c + d) dump. ^10. ] newProcessWith: #(abc def 10 20). | ||||
|  		p := [ :a :b :c :d | a dump. b dump. (c + d) dump. ] newProcessWith: #(abc def 10 20). | ||||
|  		##p := [ :a :b :c :d | a dump. b dump. (c + d) dump. ^10. ] newProcessWith: #(#abc #def 10 20). | ||||
|  		p := [ :a :b :c :d | a dump. b dump. (c + d) dump. ] newProcessWith: #(#abc #def 10 20). | ||||
|  		p2 := [ :a :b :c :d | a dump. b dump. a dump. b dump. (c + d) dump. ^10000 ] newProcessWith: #( | ||||
| 			AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA | ||||
| 			BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB  | ||||
| 			#AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA | ||||
| 			#BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB  | ||||
| 			1000000000000000 | ||||
| 			299999999999999999999999999999999999999999 | ||||
| 		). | ||||
|  | ||||
| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	#declare(#classinst) t1 t2 t3. | ||||
| 	var(#classinst) t1, t2, t3. | ||||
| 	method(#class) xxxx | ||||
| 	{ | ||||
| 		| g1 g2 | | ||||
| @ -57,9 +57,6 @@ class MyObject(TestObject) | ||||
| 		t2 := t2 value.   | ||||
| 		'END OF t2 value' dump. | ||||
| 		t2 dump. | ||||
|  | ||||
|  | ||||
| 		 | ||||
| 	} | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -29,14 +29,14 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	#declare(#classinst) t1 t2. | ||||
| 	var(#classinst) t1, t2. | ||||
|  | ||||
| 	method(#class) main2 | ||||
| 	{ | ||||
|  | ||||
| @ -29,8 +29,8 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test999 | ||||
| 	{ | ||||
| @ -40,8 +40,8 @@ class TestObject(Object) | ||||
|  | ||||
| class B.TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test000 | ||||
| 	{ | ||||
| @ -51,7 +51,7 @@ class B.TestObject(Object) | ||||
|  | ||||
| pooldic ABC  | ||||
| { | ||||
| 	#KKK := 20. | ||||
| 	KKK := 20. | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
| @ -29,8 +29,8 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
| } | ||||
|  | ||||
|  | ||||
|  | ||||
| @ -29,8 +29,8 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test999 | ||||
| 	{ | ||||
| @ -40,8 +40,8 @@ class TestObject(Object) | ||||
|  | ||||
| class B.TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test000 | ||||
| 	{ | ||||
| @ -51,7 +51,7 @@ class B.TestObject(Object) | ||||
|  | ||||
| pooldic ABC  | ||||
| { | ||||
| 	#KKK := 20. | ||||
| 	KKK := 20. | ||||
| } | ||||
|  | ||||
|  | ||||
| @ -65,12 +65,12 @@ class MyObject(TestObject) | ||||
| 			k := 99. | ||||
| 			[ | ||||
| 				[ | ||||
| 					##[ Exception signal: 'simulated error' ] ensure: [('ensure 1 ', (k asString)) dump ]. | ||||
| 					[ ^ 20 ] ensure: [ ('ensure 1 ', (k asString)) dump. ]. | ||||
| 					##[ Exception signal: 'simulated error' ] ensure: [('ensure 1 ' & (k asString)) dump ]. | ||||
| 					[ ^ 20 ] ensure: [ ('ensure 1 ' & (k asString)) dump. ]. | ||||
| 				] ensure: ['ensure 2' dump ]. | ||||
| 			] ensure: ['ensure 3' dump ]. | ||||
| 		] on: Exception do: [:ex |  | ||||
| 			('EXCETION - ' , ex messageText) dump. | ||||
| 			('EXCETION - ' & ex messageText) dump. | ||||
| 			## Exception signal: 'qqq'. | ||||
| 		]. | ||||
| 		^v1 | ||||
| @ -88,11 +88,11 @@ class MyObject(TestObject) | ||||
|  | ||||
| 		##[ Exception signal: 'simulated error' ] on: Exception do: [:ex | 'CAUGHT...' dump. Exception signal: 'jjjjjjj' ]. | ||||
| 		 | ||||
| 		"[ | ||||
| 		(*[ | ||||
| 				[ Exception signal: 'simulated error' ] ensure: ['ensure 1' dump ]. | ||||
| 		] on: Exception do: [:ex | ('EXCETION - ' , ex messageText) dump. Exception signal: 'qqq'. ]." | ||||
| 		] on: Exception do: [:ex | ('EXCETION - ' & ex messageText) dump. Exception signal: 'qqq'. ]. | ||||
|  | ||||
| 		"[1 xxx] ifCurtailed: ['XXXXXXXX CURTAILED XXXXXXXXX' dump. Exception signal: 'jjjj']." | ||||
| 		[1 xxx] ifCurtailed: ['XXXXXXXX CURTAILED XXXXXXXXX' dump. Exception signal: 'jjjj']. *) | ||||
|  | ||||
| 		v1 := [  | ||||
| 			[ | ||||
| @ -103,7 +103,7 @@ class MyObject(TestObject) | ||||
| 						[ '@@@@@' dump.  | ||||
| 						  Exception signal: 'simulated error'. | ||||
| 						  '^^^^^^' dump. ] ensure: [ | ||||
| 							('ensure 11 ', (k asString)) dump.  | ||||
| 							('ensure 11 ' & (k asString)) dump.  | ||||
| 							Exception signal: 'qqq'. | ||||
| 						]. | ||||
|  | ||||
| @ -115,7 +115,7 @@ class MyObject(TestObject) | ||||
| 					'JJJJJJJJJJJJJJJJJJJJJJJJJJJ' dump. | ||||
| 				] ensure: ['ensure 3' dump ]. | ||||
| 			] on: Exception do: [:ex |  | ||||
| 				('>>>> EXCETION - ' , ex messageText) dump. | ||||
| 				('>>>> EXCETION - ' & ex messageText) dump. | ||||
| 				ex pass. | ||||
|  | ||||
| 				##Exception signal: 'XXXXXXXXXXXXx'. | ||||
| @ -125,10 +125,10 @@ class MyObject(TestObject) | ||||
| 			'ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ' dump. | ||||
| 		] | ||||
| 		on: PrimitiveFailureException do: [:ex |  | ||||
| 			('PRIMITIVE FAILURE EXCETION AT OUTER - ' , ex messageText) dump.  | ||||
| 			('PRIMITIVE FAILURE EXCETION AT OUTER - ' & ex messageText) dump.  | ||||
| 		] | ||||
| 		on: Exception do: [:ex | | ||||
| 			('>>>> EXCETION AT OUTER - ' , ex messageText) dump. | ||||
| 			('>>>> EXCETION AT OUTER - ' & ex messageText) dump. | ||||
| 		]. | ||||
|  | ||||
|  | ||||
|  | ||||
| @ -29,8 +29,8 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test999 | ||||
| 	{ | ||||
| @ -40,8 +40,8 @@ class TestObject(Object) | ||||
|  | ||||
| class B.TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test000 | ||||
| 	{ | ||||
| @ -51,7 +51,7 @@ class B.TestObject(Object) | ||||
|  | ||||
| pooldic ABC  | ||||
| { | ||||
| 	#KKK := 20. | ||||
| 	KKK := 20. | ||||
| } | ||||
|  | ||||
|  | ||||
| @ -67,7 +67,7 @@ class MyObject(TestObject) | ||||
| 		] | ||||
| 		on: Exception | ||||
| 		do: [:ex | | ||||
| 			System logNl: ('Exception: ', ex messageText). | ||||
| 			System logNl: ('Exception: ' & ex messageText). | ||||
| 			ex return: 10. | ||||
| 			##ex retry. | ||||
| 			System logNl: '--- THIS MUST NOT BE PRINTED ---'. | ||||
|  | ||||
| @ -29,8 +29,8 @@ extend SmallInteger | ||||
|  | ||||
| class TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	var(#class) Q, R. | ||||
| 	var(#classinst) a1, a2. | ||||
|  | ||||
| 	method test999 | ||||
| 	{ | ||||
| @ -40,8 +40,8 @@ class TestObject(Object) | ||||
|  | ||||
| class B.TestObject(Object) | ||||
| { | ||||
| 	dcl(#class) Q R. | ||||
| 	dcl(#classinst) a1 a2. | ||||
| 	dcl(#class) Q, R. | ||||
| 	dcl(#classinst) a1, a2. | ||||
|  | ||||
| 	method test000 | ||||
| 	{ | ||||
| @ -90,8 +90,9 @@ class MyConsole(Console) | ||||
|  | ||||
| class MyObject(TestObject) | ||||
| { | ||||
| 	dcl(#pooldic) ABC SRX.ABC. | ||||
|  | ||||
| 	##import(#pooldic) ABC, SRX.ABC. | ||||
| 	import ABC, SRX.ABC. | ||||
| 	 | ||||
| 	method(#class) main | ||||
| 	{ | ||||
| 		| v1 v2 | | ||||
|  | ||||
		Reference in New Issue
	
	Block a user