Allow LLDB debugging

By default, once deployed, iOS applications are optimized and don't allow debugging through LLDB once the application crashes. In XCode, clicking on the project name in the left sidebar, inside the Build settings section, there should be an Optimization Level label. Its value must be defined to "No Optimization" to allow debugging.

Some useful debugging expressions

Evaluate an expression:

(lldb) expression self

Evaluate an expression and specify the level of inspection of the response (here with a depth of 1 for instance):

(lldb) expression -D 1 -- self

A depth of 0 is possible (à la Ruby, to inspect the object's ID) and is aliased as po (e.g. po self).

Useful links