diff --git a/DEPS b/DEPS
index c409be8..52a9148 100644
--- a/DEPS
+++ b/DEPS
@@ -31,11 +31,11 @@
 deps = {
   # Dependencies required to use GN/Clang in standalone
   'build': {
-    'url': '{chromium_git}/chromium/src/build@c7876b5a44308b94074287939244bc562007de69',
+    'url': '{chromium_git}/chromium/src/build@87b04ad66530e4a571cef36d6e71ef737d23a887',
     'condition': 'dawn_standalone',
   },
   'buildtools': {
-    'url': '{chromium_git}/chromium/src/buildtools@e1471b21ee9c6765ee95e9db0c76fe997ccad35c',
+    'url': '{chromium_git}/chromium/src/buildtools@f0d740e4e2f803e39dfd5d8d11f7d87bdf489514',
     'condition': 'dawn_standalone',
   },
   'buildtools/clang_format/script': {
@@ -78,7 +78,7 @@
   },
 
   'tools/clang': {
-    'url': '{chromium_git}/chromium/src/tools/clang@df9b14e26c163dd8e2c0ab081e2689f038ae7141',
+    'url': '{chromium_git}/chromium/src/tools/clang@3c4a622d9f0b0ce5ec2a438189d46c695216b324',
     'condition': 'dawn_standalone',
   },
   'tools/clang/dsymutil': {
diff --git a/src/tint/resolver/validator.cc b/src/tint/resolver/validator.cc
index ffe855e..2a24349 100644
--- a/src/tint/resolver/validator.cc
+++ b/src/tint/resolver/validator.cc
@@ -950,10 +950,8 @@
     return false;
   }
 
-  auto workgroup_attr_count = 0;
   for (auto* attr : decl->attributes) {
     if (attr->Is<ast::WorkgroupAttribute>()) {
-      workgroup_attr_count++;
       if (decl->PipelineStage() != ast::PipelineStage::kCompute) {
         AddError(
             "the workgroup_size attribute is only valid for compute stages",
diff --git a/src/tint/writer/spirv/builder.cc b/src/tint/writer/spirv/builder.cc
index 6469968..c944a69 100644
--- a/src/tint/writer/spirv/builder.cc
+++ b/src/tint/writer/spirv/builder.cc
@@ -2262,14 +2262,12 @@
   }
   ops.push_back(Operand::Int(func_id));
 
-  size_t arg_idx = 0;
   for (auto* arg : expr->args) {
     auto id = GenerateExpressionWithLoadIfNeeded(arg);
     if (id == 0) {
       return 0;
     }
     ops.push_back(Operand::Int(id));
-    arg_idx++;
   }
 
   if (!push_function_inst(spv::Op::OpFunctionCall, std::move(ops))) {
