apertium/lexd

clang build error

Closed this issue · 0 comments

lexdcompiler.cc:919:87: error: cannot pass object of non-trivial type 'const icu_67::UnicodeString' through variadic method; call will abort at runtime [-Wnon-pod-varargs]
      die("Lexicon %S cannot be both optional and non-optional in a single pattern.", name(t1.left.name));
                                                                                      ^
lexdcompiler.cc:922:87: error: cannot pass object of non-trivial type 'const icu_67::UnicodeString' through variadic method; call will abort at runtime [-Wnon-pod-varargs]
      die("Lexicon %S cannot be both optional and non-optional in a single pattern.", name(t1.right.name));

name() returns UnicodeString& which cannot be passed through C variadics. Either use C++ variadics or change it to return a char16_t*