annotate wip_fix_regression_in_rathaxes_compiler_passes_correctly_resolve_chunk_args_subidentifiers.patch @ 125:3a92a43a3215

Reorder the patch queue so it stays understable
author Louis Opter <louis@lse.epita.fr>
date Sun, 04 Aug 2013 17:09:42 -0700
parents wip.patch@ecba077e0f73
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
124
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
1 # HG changeset patch
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
2 # Parent 67dc97cbe736ead44d6c596eb339829a41c4b847
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
3 diff --git a/rathaxes/compiler/passes/common/rtxResolve.inc.cws b/rathaxes/compiler/passes/common/rtxResolve.inc.cws
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
4 --- a/rathaxes/compiler/passes/common/rtxResolve.inc.cws
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
5 +++ b/rathaxes/compiler/passes/common/rtxResolve.inc.cws
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
6 @@ -388,7 +388,20 @@
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
7 // Argument comes from the Chunk, so we retrieve the *real* type
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
8 // That will be resolved after the "local" resolution.
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
9
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
10 - rtxResolve_BuildLocalSelf(subResVal, theChunk, placeHolder, subidentifiers);
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
11 + if (subidentifiers#front == "local")
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
12 + rtxResolve_BuildLocalSelf(subResVal, theChunk, placeHolder, subidentifiers);
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
13 + else
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
14 + {
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
15 + local src_arg;
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
16 + local src_type;
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
17 + local src_value;
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
18 + rtxNodeArgs_GetArgByName(src_resVals, "self", src_arg);
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
19 + if (rtxNodeArg_getRType(src_arg, src_type) == false)
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
20 + return false;
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
21 + if (rtxNodeArg_getValue(src_arg, src_value) == false)
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
22 + return false;
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
23 + rtxNodeArgs_AppendArg(subResVal, "self", src_type, src_value);
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
24 + }
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
25 local local_self;
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
26 rtxNodeArgs_GetArgByName(subResVal, "self", local_self);
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
27 local local_type;