diff graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Parser.java @ 16684:d654cd5ed05a

SL/SourceAttribution: further corrections for attributing function bodies
author Michael Van De Vanter <michael.van.de.vanter@oracle.com>
date Fri, 01 Aug 2014 18:10:48 -0700
parents 0fc43b066eee
children 888907296590
line wrap: on
line diff
--- a/graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Parser.java	Fri Aug 01 16:30:22 2014 -0700
+++ b/graal/com.oracle.truffle.sl/src/com/oracle/truffle/sl/parser/Parser.java	Fri Aug 01 18:10:48 2014 -0700
@@ -134,8 +134,10 @@
 	void Function() {
 		Expect(4);
 		Expect(1);
-		factory.startFunction(t); 
+		Token identifierToken = t; 
 		Expect(5);
+		int bodyStartPos = t.charPos; 
+		factory.startFunction(identifierToken, bodyStartPos); 
 		if (la.kind == 1) {
 			Get();
 			factory.addFormalParameter(t); 
@@ -219,8 +221,8 @@
 	SLStatementNode  IfStatement(boolean inLoop) {
 		SLStatementNode  result;
 		Expect(14);
+		Token ifToken = t; 
 		Expect(5);
-		Token ifToken = t; 
 		SLExpressionNode condition = Expression();
 		Expect(7);
 		SLStatementNode thenPart = Block(inLoop);