[mlir:Bytecode] Move variable to inside of the lambda to fix MSVC build

MSVC is not picking up a variable capture somehow, try moving it inside.
This commit is contained in:
River Riddle 2022-08-23 17:43:41 -07:00
parent 37cbbea674
commit ae97b5acf8

View File

@ -401,9 +401,6 @@ void BytecodeWriter::writeAttrTypeSection(EncodingEmitter &emitter) {
offsetEmitter.emitVarInt(llvm::size(numberingState.getAttributes()));
offsetEmitter.emitVarInt(llvm::size(numberingState.getTypes()));
// The writer used when emitting using a custom bytecode encoding.
DialectWriter dialectWriter(attrTypeEmitter, numberingState, stringSection);
// A functor used to emit an attribute or type entry.
uint64_t prevOffset = 0;
auto emitAttrOrType = [&](auto &entry) {
@ -412,6 +409,10 @@ void BytecodeWriter::writeAttrTypeSection(EncodingEmitter &emitter) {
// First, try to emit this entry using the dialect bytecode interface.
bool hasCustomEncoding = false;
if (const BytecodeDialectInterface *interface = entry.dialect->interface) {
// The writer used when emitting using a custom bytecode encoding.
DialectWriter dialectWriter(attrTypeEmitter, numberingState,
stringSection);
if constexpr (std::is_same_v<std::decay_t<decltype(entryValue)>, Type>) {
// TODO: We don't currently support custom encoded mutable types.
hasCustomEncoding =