Skip to Content [alt-c]

Comment

In reply to How to Crash Systemd in One Tweet

Reader Juha Autero on 2016-09-29 at 11:45:

People don't seem to understand how assert works. In release builds assert should be no-op. https://github.com/lattera/glibc/blob/master/assert/assert.h#L44 First of all assert is a debug tool, not error handling mechanism. Secondly, exiting with abort signal isn't very good error handling mechanism for systemd.

On the other hand, arguing that this makes systemd defective is hypocritical considering that Go FAQ says

Go doesn't provide assertions. They are undeniably convenient, but our experience has been that programmers use them as a crutch to avoid thinking about proper error handling and reporting. (https://golang.org/doc/faq#assertions)

Reply

Post a Reply

Your comment will be public. If you would like to contact me privately, please email me. Please keep your comment on-topic, polite, and comprehensible.

(Optional; will be published)

(Optional; will not be published)

(Optional; will be published)

  • Blank lines separate paragraphs.
  • Lines starting with ">" are indented as block quotes.
  • Lines starting with two spaces are reproduced verbatim.
  • Text surrounded by *asterisks* is italicized.
  • Text surrounded by `back ticks` is monospaced.
  • URLs are turned into links.
  • Use the Preview button to check your formatting.