13990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata#include <string> 23990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata#ifdef _LIBCPP_INLINE_VISIBILITY 33990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata#undef _LIBCPP_INLINE_VISIBILITY 43990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata#endif 53990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata#define _LIBCPP_INLINE_VISIBILITY 63990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata#include <set> 73990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 83990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granatatypedef std::set<int> intset; 93990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granatatypedef std::set<std::string> stringset; 103990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 113990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granataint g_the_foo = 0; 123990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 133990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granataint thefoo_rw(int arg = 1) 143990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata{ 153990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata if (arg < 0) 163990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata arg = 0; 173990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata if (!arg) 183990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata arg = 1; 193990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata g_the_foo += arg; 203990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata return g_the_foo; 213990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata} 223990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 233990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granataint main() 243990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata{ 253990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata intset ii; 263990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 273990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 283990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(0); 293990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(1); 303990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(2); 313990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(3); 323990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(4); 333990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(5); 343990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 353990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 363990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.insert(6); 373990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 383990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 393990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ii.clear(); 403990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 413990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 423990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata stringset ss; 433990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 443990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 453990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ss.insert("a"); 463990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ss.insert("a very long string is right here"); 473990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 483990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 493990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ss.insert("b"); 503990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ss.insert("c"); 513990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 523990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 533990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata ss.erase("b"); 543990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata thefoo_rw(1); // Set break point at this line. 553990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata 563990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata return 0; 573990c278c5f4f6ce1373ee3e6d5b984883cf4318Enrico Granata} 58