diff options
| author | Alex Cameron <ascottcameron@gmail.com> | 2020-10-25 23:30:22 +1100 |
|---|---|---|
| committer | Veikka Tuominen <git@vexu.eu> | 2020-12-23 15:03:11 +0200 |
| commit | ca282184ae4f02aa1eec8cf1301df89accbb4e1b (patch) | |
| tree | 1845367317dcb0572016ce0af0d1d7cd6fe408a6 /src | |
| parent | 51a904677c9c9264f4856aaff270b18483205443 (diff) | |
| download | zig-ca282184ae4f02aa1eec8cf1301df89accbb4e1b.tar.gz zig-ca282184ae4f02aa1eec8cf1301df89accbb4e1b.zip | |
Implement parsing for multi-arg Clang options.
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.zig | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/main.zig b/src/main.zig index 3b8ebb1461..3bcae364d0 100644 --- a/src/main.zig +++ b/src/main.zig @@ -3056,8 +3056,15 @@ pub const ClangArgIterator = struct { @panic("TODO"); } }, - .multi_arg => if (clang_arg.matchEql(arg) > 0) { - @panic("TODO"); + .multi_arg => |num_args| if (clang_arg.matchEql(arg) > 0) { + // Example `-sectcreate <arg1> <arg2> <arg3>`. + var i: usize = 0; + while (i < num_args) : (i += 1) { + self.incrementArgIndex(); + self.other_args.len += 1; + } + self.zig_equivalent = clang_arg.zig_equivalent; + break :find_clang_arg; }, } else { |
