| Index: src/wasm/ast-decoder.h
 | 
| diff --git a/src/wasm/ast-decoder.h b/src/wasm/ast-decoder.h
 | 
| index 4a02ea5abfec73bc487141a6622a7190ba4aa55f..5376e7bfdd9db7ab6e0521726b77c77e9f9013bc 100644
 | 
| --- a/src/wasm/ast-decoder.h
 | 
| +++ b/src/wasm/ast-decoder.h
 | 
| @@ -220,8 +220,22 @@ enum ReadUnsignedLEB128ErrorCode { kNoError, kInvalidLEB128, kMissingLEB128 };
 | 
|  ReadUnsignedLEB128ErrorCode ReadUnsignedLEB128Operand(const byte*, const byte*,
 | 
|                                                        int*, uint32_t*);
 | 
|  
 | 
| -std::vector<LocalType>* DecodeLocalDeclsForTesting(
 | 
| -    base::AccountingAllocator* allocator, const byte* start, const byte* end);
 | 
| +struct AstLocalDecls {
 | 
| +  // The size of the encoded declarations.
 | 
| +  uint32_t decls_encoded_size;  // size of encoded declarations
 | 
| +
 | 
| +  // Total number of locals.
 | 
| +  uint32_t total_local_count;
 | 
| +
 | 
| +  // List of {local type, count} pairs.
 | 
| +  ZoneVector<std::pair<LocalType, uint32_t>> local_types;
 | 
| +
 | 
| +  // Constructor initializes the vector.
 | 
| +  explicit AstLocalDecls(Zone* zone)
 | 
| +      : decls_encoded_size(0), total_local_count(0), local_types(zone) {}
 | 
| +};
 | 
| +
 | 
| +bool DecodeLocalDecls(AstLocalDecls& decls, const byte* start, const byte* end);
 | 
|  BitVector* AnalyzeLoopAssignmentForTesting(Zone* zone, size_t num_locals,
 | 
|                                             const byte* start, const byte* end);
 | 
|  
 | 
| 
 |