  Machine learning and deep learning in particular has been recently used to
successfully address many tasks in the domain of code such as finding and
fixing bugs, code completion, decompilation, type inference and many others.
However, the issue of adversarial robustness of models for code has gone
largely unnoticed. In this work, we explore this issue by: (i) instantiating
adversarial attacks for code (a domain with discrete and highly structured
inputs), (ii) showing that, similar to other domains, neural models for code
are vulnerable to adversarial attacks, and (iii) combining existing and novel
techniques to improve robustness while preserving high accuracy.
