Error when compiling DSDLs

Suddenly, without adding any strange characters in my DSDLs, I get the following compile error

Compiler failure
Traceback (most recent call last):
  File "/usr/local/bin/libuavcan_dsdlc", line 61, in <module>
    dsdlc_run(args.source_dir, args.incdir, args.outdir)
  File "/usr/local/lib/python2.7/dist-packages/libuavcan_dsdl_compiler/", line 63, in run
    run_generator(types, output_dir)
  File "/usr/local/lib/python2.7/dist-packages/libuavcan_dsdl_compiler/", line 112, in run_generator
  File "/usr/local/lib/python2.7/dist-packages/libuavcan_dsdl_compiler/", line 90, in die
    raise DsdlCompilerException(str(text))
DsdlCompilerException: 'ascii' codec can't decode byte 0xe2 in position 10: ordinal not in range(128)
'ascii' codec can't decode byte 0xe2 in position 10: ordinal not in range(128)

Character 0xe2 is nothing I have added… Why is this emerging?

Kind Regards

Post the offending source file here, please. Attach the whole file, don’t copy-paste it’s contents, since the latter may fail to reproduce possible encoding problems.

Hi! I am not sure what DSDL source file it is… Or are you refering to the
I can see in the generated header file directory that it stop generating .hpp files when the error occurs. But I am not sure about in what order the files are created and what file that is upcoming.
How is the compiler sorting the files?

Btw. Where is ) writing log messages to?


I found the problem. A minus ‘-’ was changed into '–" by my editor.
Thanks for your time.


Things like this are DSDL source files:

Nowhere, they just disappear unless the compiler is invoked with -v. Use --help for usage info.

This is a problem of the old parser that is now fixed in the new parser (which is under development still): the compiler was supposed to report which exact file caused the problem, but it didn’t.

Ok I see. Thanks for the info!

Kind Regards