Mercurial > archived > louis > epitech > mq > rathaxes
annotate rathaxes_compiler_passes_look_for_locally_casted_variables_in_sequence_calls.patch @ 115:5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
author | Louis Opter <louis@lse.epita.fr> |
---|---|
date | Mon, 22 Jul 2013 13:52:00 -0700 |
parents | |
children |
rev | line source |
---|---|
115
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
1 # HG changeset patch |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
2 # User David Pineau <dav.pineau@gmail.com>, Louis Opter <louis@lse.epita.fr> |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
3 # Parent 163975605ce8e4b9049deb60207358acc904f14c |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
4 rathaxes: correctly resolve locally casted variables during sequence calls |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
5 |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
6 C variables declared locally and casted into Rathaxes types weren't |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
7 taken into account during sequence calls. This changeset fixes it. |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
8 |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
9 diff --git a/rathaxes/compiler/passes/back/rtxIntrospect.inc.cws b/rathaxes/compiler/passes/back/rtxIntrospect.inc.cws |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
10 --- a/rathaxes/compiler/passes/back/rtxIntrospect.inc.cws |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
11 +++ b/rathaxes/compiler/passes/back/rtxIntrospect.inc.cws |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
12 @@ -751,6 +751,8 @@ |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
13 local theType; |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
14 if (findElement(theVar.name, theChunk.type_map)) |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
15 ref theType = theChunk.type_map[theVar.name]; |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
16 + else if (findElement(theVar.name, theChunk.variables)) |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
17 + ref theType = theChunk.variables[theVar.name].type_node; |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
18 insert param.rtype; |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
19 if (getArraySize(param.identifiers) > 2) |
5a663f8f0e54
WIP, fix another small bug in rathaxes sequence calls
Louis Opter <louis@lse.epita.fr>
parents:
diff
changeset
|
20 { |