ruiu added a comment. I don't think that's the design flaw of StringTableBuilder. StringTableBuilder creates a string table in memory, so naturally it cannot create a table that's larger than the virtual memory space. Thus size_t is the appropriate type. http://reviews.llvm.org/D14171