equal
deleted
inserted
replaced
42 ]. |
42 ]. |
43 |
43 |
44 self withAllVariableNodesOf: anRBBlockNode do: [ :node | |
44 self withAllVariableNodesOf: anRBBlockNode do: [ :node | |
45 (allDefinedVarNames includes: node name) ifFalse:[ |
45 (allDefinedVarNames includes: node name) ifFalse:[ |
46 (allInstVarNames includes: node name) ifTrue:[ |
46 (allInstVarNames includes: node name) ifTrue:[ |
47 PPCCompilationError new signalWith: 'code refers to an instance variable named `',node name,'`'. |
47 PPCCompilationError new signal: 'code refers to an instance variable named `',node name,'`'. |
48 ^ self. |
48 ^ self. |
49 ]. |
49 ]. |
50 (allClassVarNames includes: node name) ifTrue:[ |
50 (allClassVarNames includes: node name) ifTrue:[ |
51 PPCCompilationError new signalWith: 'code refers to a class variable named `',node name,'`'. |
51 PPCCompilationError new signal: 'code refers to a class variable named `',node name,'`'. |
52 ^ self. |
52 ^ self. |
53 ]. |
53 ]. |
54 (Smalltalk includesKey: node name asSymbol) ifFalse:[ |
54 (Smalltalk includesKey: node name asSymbol) ifFalse:[ |
55 PPCCompilationError new signalWith: 'code refers to an unknown variable named `',node name,'`'. |
55 PPCCompilationError new signalWith: 'code refers to an unknown variable named `',node name,'`'. |
56 ^ self. |
56 ^ self. |
71 PPCCompilationError new signalWith: 'code contains a super-send'. |
71 PPCCompilationError new signalWith: 'code contains a super-send'. |
72 ^ self |
72 ^ self |
73 ]. |
73 ]. |
74 |
74 |
75 "Created: / 27-07-2015 / 12:15:28 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
75 "Created: / 27-07-2015 / 12:15:28 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
76 "Modified: / 27-07-2015 / 14:43:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
76 "Modified: / 17-08-2015 / 13:49:50 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
77 ! ! |
77 ! ! |
78 |
78 |
79 !PPCASTUtilities methodsFor:'enumerating'! |
79 !PPCASTUtilities methodsFor:'enumerating'! |
80 |
80 |
81 withAllMessageNodesOf: anRBProgramNode do: aBlock |
81 withAllMessageNodesOf: anRBProgramNode do: aBlock |