mlir currently fails to build on Solaris:
/vol/llvm/src/llvm-project/dist/mlir/lib/Conversion/VectorToLoops/ConvertVectorToLoops.cpp:78:20: error: reference to 'index_t' is ambiguous IndexHandle zero(index_t(0)), one(index_t(1)); ^ /usr/include/sys/types.h:103:16: note: candidate found by name lookup is 'index_t' typedef short index_t; ^ /vol/llvm/src/llvm-project/dist/mlir/include/mlir/EDSC/Builders.h:27:8: note: candidate found by name lookup is 'mlir::edsc::index_t' struct index_t { ^
and many more.
Given that POSIX reserves all identifiers ending in _t 2.2.2 The Name Space, it seems
quite unwise to use such identifiers in user code, even more so without a distinguished
prefix.
The following patch fixes this by adding a mlir_ prefix as is already used in other
cases.
Tested on amd64-pc-solaris2.11 and sparcv9-sun-solaris2.11.
Ok for master?
Btw., it would be helpful if mlir were either listed in the global CODE_OWNERS.TXT or had one of its own.