| author | |
| committer | |
| log | 63304a871e3837f407943ac8eb63073fdc89f0fd |
| tree | 050534d8cfa8b7fd37f4280f21e7eab834016259 |
| parent | 55e6bd10fe49614cd54eb02dd44c50d0643804c3 |
2 files changed, 10 insertions(+), 1 deletions(-)
src/translate_c/ast.zig+1-1| ... | ... | @@ -1665,7 +1665,7 @@ fn renderNode(c: *Context, node: Node) Allocator.Error!NodeIndex { |
| 1665 | 1665 | }, |
| 1666 | 1666 | .array_access => { |
| 1667 | 1667 | const payload = node.castTag(.array_access).?.data; |
| 1668 | const lhs = try renderNode(c, payload.lhs); | |
| 1668 | const lhs = try renderNodeGrouped(c, payload.lhs); | |
| 1669 | 1669 | const l_bracket = try c.addToken(.l_bracket, "["); |
| 1670 | 1670 | const index_expr = try renderNode(c, payload.rhs); |
| 1671 | 1671 | _ = try c.addToken(.r_bracket, "]"); |
test/run_translated_c.zig+9| ... | ... | @@ -1467,4 +1467,13 @@ pub fn addCases(cases: *tests.RunTranslatedCContext) void { |
| 1467 | 1467 | \\ return 0; |
| 1468 | 1468 | \\} |
| 1469 | 1469 | , ""); |
| 1470 | ||
| 1471 | cases.add("Render array LHS as grouped node if necessary", | |
| 1472 | \\#include <stdlib.h> | |
| 1473 | \\int main(void) { | |
| 1474 | \\ int arr[] = {40, 41, 42, 43}; | |
| 1475 | \\ if ((arr + 1)[1] != 42) abort(); | |
| 1476 | \\ return 0; | |
| 1477 | \\} | |
| 1478 | , ""); | |
| 1470 | 1479 | } |