Ansel Sermersheim


Ansel Sermersheim is a consultant specializing in the development of the CopperSpice project, promoting open-source, and educational trainings. He has been working as a programmer for over twenty years. His degree is in Computer Science from Cal Poly San Luis Obispo.

  • Co-founder of CopperSpice, a C++ GUI library
  • Co-founder of DoxyPress, a C++ application for generating documentation
  • Developer of the BSD open source libraries: libGuarded, CsSignal and CsString.

He has programmed in C++, C, Lisp, Java, and Perl, with extensive knowledge in TCP/IP and multithreaded design. He is an avid follower of the C++ standard. Speaker at CppCon 2015, CppNow 2016, CppNow 2017, CppCon 2017, CppCon 2018, emBO++ 2019, and numerous ACCU meetings in the San Franisco Bay Area, Amsterdam, Munich, and London.



Undefined Behavior is Not an Error (2019)

We will provide an introduction to the terminology connected with Undefined Behavior in C++ and explore the differences between run time errors versus undefined behavior. The presentation will focus on Undefined Behavior from the perspective of a developer rather than a compiler designer. As developers, we may need to assume that all Undefined Behavior is treated as if the code was not present. Whereas many talks focus on what current day compilers actually do, our presentation will explore what an "evil compiler" is permitted to do.

Several examples will be provided to illustrate these ideas. Familiarity with C++ is recommended however no prior knowledge of compilers or undefined behavior is required.