Static:type={operator=:(movethis)={std::cout<<"Static destructor\n";}}Local:type={operator=:(movethis)={std::cout<<"Local destructor\n";}}Staticstatic_variable;// Destructor of this object *will* be calledatexit_handler:()={std::cout<<"atexit handler\n";}main:()->int={local_variable:Local=();// Destructor will *not* be calledresult:=std::atexit(atexit_handler);// Handler will be calledifresult!=0{std::cerr<<"atexit registration failed\n";returnEXIT_FAILURE;}std::cout<<"test\n";std::exit(EXIT_FAILURE);std::cout<<"this line will *not* be executed\n";}