[PATCH] D76185: [mlir] Add support for generating dialect declarations via tablegen.

River Riddle via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 16 12:35:07 PDT 2020


rriddle added a comment.

In D76185#1925155 <https://reviews.llvm.org/D76185#1925155>, @rriddle wrote:

> In D76185#1925054 <https://reviews.llvm.org/D76185#1925054>, @NathanielMcVicar wrote:
>
> > I think part of this change may have broken the Windows build. Sorry for not being able to be more specific or catching it sooner. I'll be more on top of this once the buildbot moves over to the loud master.
> >
> >   51.976 [2280/29/443] Building CXX object tools\mlir\lib\TableGen\CMakeFiles\LLVMMLIRTableGen.dir\Dialect.cpp.obj
> >   FAILED: tools/mlir/lib/TableGen/CMakeFiles/LLVMMLIRTableGen.dir/Dialect.cpp.obj 
> >   C:\PROGRA~2\MICROS~1\2017\COMMUN~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\cl.exe  /nologo /TP -DBUILD_EXAMPLES -DGTEST_HAS_RTTI=0 -DMLIR_CUDA_CONVERSIONS_ENABLED=1 -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Itools\mlir\lib\TableGen -IE:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\lib\TableGen -Iinclude -IE:\build_slave\mlir-x64-windows-ninja\llvm-project\llvm\include -IE:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\include -Itools\mlir\include /DWIN32 /D_WINDOWS   /Zc:inline /Zc:strictStrings /Oi /Zc:rvalueCast /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd4324 -w14062 -we4238 /Gw /MD /O2 /Ob2    /EHs-c- /GR- -UNDEBUG -std:c++14 /showIncludes /Fotools\mlir\lib\TableGen\CMakeFiles\LLVMMLIRTableGen.dir\Dialect.cpp.obj /Fdtools\mlir\lib\TableGen\CMakeFiles\LLVMMLIRTableGen.dir\LLVMMLIRTableGen.pdb /FS -c E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\lib\TableGen\Dialect.cpp
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\include\mlir/TableGen/Dialect.h(36): error C2039: 'string': is not a member of 'std'
> >   C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\memory(18): note: see declaration of 'std'
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\include\mlir/TableGen/Dialect.h(36): error C3646: 'getCppClassName': unknown override specifier
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\include\mlir/TableGen/Dialect.h(36): error C2059: syntax error: '('
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\include\mlir/TableGen/Dialect.h(36): error C2238: unexpected token(s) preceding ';'
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\lib\TableGen\Dialect.cpp(27): error C2039: 'getCppClassName': is not a member of 'mlir::tblgen::Dialect'
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\include\mlir/TableGen/Dialect.h(25): note: see declaration of 'mlir::tblgen::Dialect'
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\lib\TableGen\Dialect.cpp(27): error C2270: 'getCppClassName': modifiers not allowed on nonmember functions
> >   E:\build_slave\mlir-x64-windows-ninja\llvm-project\mlir\lib\TableGen\Dialect.cpp(29): error C2065: 'def': undeclared 
> >
>
>
> No problem Nathaniel, thanks for the report! I think this is just a missing header of <string> in Dialect.h. I'm assuming this is due to differences in includes for the various STL libraries.


Does syncing past 9b1513866fd0f4448115bdc0eaa13b20c6c8cb64 <https://reviews.llvm.org/rG9b1513866fd0f4448115bdc0eaa13b20c6c8cb64> fix it?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D76185/new/

https://reviews.llvm.org/D76185





More information about the llvm-commits mailing list