==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 8 at 0x7b0800096180 by thread T7:
    #0 free ??:? (ide+0x21eec5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_queue_pop_tail ??:? (libglib-2.0.so.0+0x6edd2) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

  Previous write of size 8 at 0x7b0800096180 by main thread (mutexes: write M0, write M1):
    #0 malloc ??:? (ide+0x21e76c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_malloc ??:? (libglib-2.0.so.0+0x61fcd) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::PopUp(Upp::Ctrl*, bool, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:203 (ide+0x10bef64) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 ShowSplash() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:178 (ide+0x370ee6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:398 (ide+0x3a4e95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Mutex M1 (0x7b0c00000030) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_test_get_path ??:? (libglib-2.0.so.0+0x88dbc) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

  Thread T7 'pool-spawner' (tid=4084, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_mutex_init ??:? (libglib-2.0.so.0+0x890c5) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::PopUp(Upp::Ctrl*, bool, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:203 (ide+0x10bef64) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 ShowSplash() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:178 (ide+0x370ee6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:398 (ide+0x3a4e95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race ??:? in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 8 at 0x7b0800095b80 by main thread (mutexes: write M0):
    #0 free ??:? (ide+0x21eec5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_clear_list ??:? (libglib-2.0.so.0+0x57d2e) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::Create(Upp::Ctrl*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:114 (ide+0x10d2233) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Ctrl::PopUp(Upp::Ctrl*, bool, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:203 (ide+0x10bef64) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ShowSplash() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:178 (ide+0x370ee6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:398 (ide+0x3a4e95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 8 at 0x7b0800095b80 by thread T9:
    #0 malloc ??:? (ide+0x21e76c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_malloc ??:? (libglib-2.0.so.0+0x61fcd) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T9 'pool-ide' (tid=4089, running) created by thread T7 at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_mutex_init ??:? (libglib-2.0.so.0+0x890c5) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

SUMMARY: ThreadSanitizer: data race ??:? in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 8 at 0x7b100003e040 by main thread (mutexes: write M0):
    #0 free ??:? (ide+0x21eec5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_clear_list ??:? (libglib-2.0.so.0+0x57bb8) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::Create(Upp::Ctrl*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:114 (ide+0x10d2233) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Ctrl::PopUp(Upp::Ctrl*, bool, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:203 (ide+0x10bef64) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ShowSplash() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:178 (ide+0x370ee6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:398 (ide+0x3a4e95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 8 at 0x7b100003e040 by thread T9:
    #0 memcpy ??:? (ide+0x21bb97) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_strdup ??:? (libglib-2.0.so.0+0x7dafc) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T9 'pool-ide' (tid=4089, running) created by thread T7 at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_mutex_init ??:? (libglib-2.0.so.0+0x890c5) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

SUMMARY: ThreadSanitizer: data race ??:? in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 8 at 0x7b0c00064800 by main thread (mutexes: write M0):
    #0 free ??:? (ide+0x21eec5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_clear_list ??:? (libglib-2.0.so.0+0x57a6a) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::Create(Upp::Ctrl*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:114 (ide+0x10d2233) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Ctrl::PopUp(Upp::Ctrl*, bool, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:203 (ide+0x10bef64) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ShowSplash() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:178 (ide+0x370ee6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:398 (ide+0x3a4e95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 8 at 0x7b0c00064800 by thread T9:
    #0 malloc ??:? (ide+0x21e76c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_malloc ??:? (libglib-2.0.so.0+0x61fcd) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T9 'pool-ide' (tid=4089, running) created by thread T7 at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_mutex_init ??:? (libglib-2.0.so.0+0x890c5) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

SUMMARY: ThreadSanitizer: data race ??:? in free
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 8 at 0x7b1c0001a7f0 by main thread (mutexes: write M0):
    #0 free ??:? (ide+0x21eec5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_clear_list ??:? (libglib-2.0.so.0+0x57a7a) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::Create(Upp::Ctrl*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:114 (ide+0x10d2233) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Ctrl::PopUp(Upp::Ctrl*, bool, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkCreate.cpp:203 (ide+0x10bef64) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ShowSplash() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:178 (ide+0x370ee6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:398 (ide+0x3a4e95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 8 at 0x7b1c0001a7f0 by thread T9:
    #0 calloc ??:? (ide+0x21e9f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_malloc0 ??:? (libglib-2.0.so.0+0x62015) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T9 'pool-ide' (tid=4089, running) created by thread T7 at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_mutex_init ??:? (libglib-2.0.so.0+0x890c5) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)

SUMMARY: ThreadSanitizer: data race ??:? in free
==================
==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=4074)
  Cycle in lock order graph: M0 (0x7b1000002f40) => M1 (0x7b0c00000030) => M0

  Mutex M1 acquired here while holding mutex M0 in main thread:
    #0 pthread_mutex_lock ??:? (ide+0x22204b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_type_add_interface_static ??:? (libgobject-2.0.so.0+0x3aa95) (BuildId: d9f8405342ef9706b559ee30224d743fff60354d)
    #2 Upp::Function<void (_cairo*)>::Wrapper<Upp::SOImages(int, unsigned int)::$_0>::Execute(_cairo*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x8630d9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Function<void (_cairo*)>::operator()(_cairo*) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x88bab4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::CairoImage(int, int, Upp::Function<void (_cairo*)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ChGtk3.cpp:95 (ide+0x85bcc0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::SOImages(int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ChGtk3.cpp:215 (ide+0x85cef6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::ChHostSkin() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ChGtk3.cpp:333 (ide+0x8586ef) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::ReSkin() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:951 (ide+0x1098067) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::SetUHDEnabled(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:794 (ide+0x1098af0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::InitGtkApp(int, char**, char const**) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkApp.cpp:125 (ide+0x10dff34) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a37ef) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

    Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message

  Mutex M0 acquired here while holding mutex M1 in main thread:
    #0 pthread_rwlock_rdlock ??:? (ide+0x22314b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 g_rw_lock_reader_lock ??:? (libglib-2.0.so.0+0x898d6) (BuildId: a6c943ba749ffc7194f82b6296798c3bc140ce9f)
    #2 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:853 (ide+0x10bb247) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 SelectPackageDlg::Run(Upp::String&, Upp::String) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/SelectPkg.cpp:373 (ide+0x2b6453) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 SelectPackage(Upp::String&, char const*, char const*, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/SelectPkg.cpp:866 (ide+0x2bc100) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:215 (ide+0x2f99ba) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) ??:? in pthread_mutex_lock
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Read of size 1 at 0x55d93c1560fc by main thread (mutexes: write M0):
    #0 Indexer::IsRunning() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:514 (ide+0x9f769c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Ide::SyncClang() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:722 (ide+0x2fdac9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Ide::Periodic() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:675 (ide+0x2fd21d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Ctrl::TimerProc(unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlTimer.cpp:136 (ide+0x10b71b3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:804 (ide+0x10d8610) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 1 at 0x55d93c1560fc by thread T12 (mutexes: write M1):
    #0 Indexer::SchedulerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:504 (ide+0x9f7145) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_2::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:306 (ide+0x9faa31) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_2>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa969) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd0fc)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Mutex M1 (0x55d93c1560b8) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 __cxx_global_var_init.272 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:164 (ide+0x1e74ac) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 _GLOBAL__sub_I_clang_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/ide/clang/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/ide/clang$blitz.cpp:? (ide+0x1e77cf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #5 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T12 (tid=4132, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:168 (ide+0xa3a432) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::StartNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:473 (ide+0xa3ba99) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:306 (ide+0x9f5185) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:514 in Indexer::IsRunning()
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T10:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49437) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsCSourceFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Core/Workspace.cpp:5 (ide+0x5df240) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Indexer::IndexerThread()::$_0::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:234 (ide+0x9fa600) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<bool (Upp::String const&)>::Wrapper<Indexer::IndexerThread()::$_0>::Execute(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa4a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<bool (Upp::String const&)>::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x9fc1b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:288 (ide+0x9ec433) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49437) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsCSourceFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Core/Workspace.cpp:5 (ide+0x5df240) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Indexer::IndexerThread()::$_0::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:234 (ide+0x9fa600) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<bool (Upp::String const&)>::Wrapper<Indexer::IndexerThread()::$_0>::Execute(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa4a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<bool (Upp::String const&)>::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x9fc1b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:288 (ide+0x9ec433) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Thread T10 (tid=4130, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WStringBuffer::Begin() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:882 (ide+0x4d015e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::WStringBuffer::operator unsigned int*() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:889 (ide+0xb4ae35) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToLower(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2137 (ide+0xb488c5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsCSourceFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Core/Workspace.cpp:5 (ide+0x5df240) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Indexer::IndexerThread()::$_0::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:234 (ide+0x9fa600) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<bool (Upp::String const&)>::Wrapper<Indexer::IndexerThread()::$_0>::Execute(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa4a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<bool (Upp::String const&)>::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x9fc1b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:288 (ide+0x9ec433) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T10:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49437) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsCSourceFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Core/Workspace.cpp:5 (ide+0x5df240) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Indexer::IndexerThread()::$_0::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:234 (ide+0x9fa600) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<bool (Upp::String const&)>::Wrapper<Indexer::IndexerThread()::$_0>::Execute(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa4a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<bool (Upp::String const&)>::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x9fc1b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:288 (ide+0x9ec433) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Thread T10 (tid=4130, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:882 in Upp::WStringBuffer::Begin()
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T10:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49437) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsCSourceFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Core/Workspace.cpp:5 (ide+0x5df240) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Indexer::IndexerThread()::$_0::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:234 (ide+0x9fa600) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<bool (Upp::String const&)>::Wrapper<Indexer::IndexerThread()::$_0>::Execute(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa4a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<bool (Upp::String const&)>::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x9fc1b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:288 (ide+0x9ec433) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToLower(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2138 (ide+0xb48902) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 IsCSourceFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Core/Workspace.cpp:5 (ide+0x5df240) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Indexer::IndexerThread()::$_0::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:234 (ide+0x9fa600) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::Function<bool (Upp::String const&)>::Wrapper<Indexer::IndexerThread()::$_0>::Execute(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa4a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<bool (Upp::String const&)>::operator()(Upp::String const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x9fc1b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:288 (ide+0x9ec433) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #10 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Thread T10 (tid=4130, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0, write M1):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::WString::WString(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:227 (ide+0xa3e356) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::String::ToWString() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.cpp:214 (ide+0xb43c53) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::RichPara::FormatLines(int, Upp::RichPara::Number const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/ParaType.cpp:255 (ide+0x1136532) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::RichTxt::Sync0(Upp::RichTxt::Para const&, int, Upp::RichContext const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:29 (ide+0x114a59b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::RichTxt::Sync(int, Upp::RichContext const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:59 (ide+0x114ac16) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::RichTxt::Advance(int, Upp::RichContext&, Upp::RichContext&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:89 (ide+0x1142ad9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::RichTxt::GetHeight(Upp::RichContext) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:167 (ide+0x114b4ae) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::RichText::GetHeight(Upp::Rect_<int> const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TextPaint.cpp:8 (ide+0x11425d9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::RichTextView::SetSb() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:78 (ide+0x7bc89c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::RichTextView::Pick(Upp::RichText&&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:360 (ide+0x7bff19) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::RichTextView::Pick(Upp::RichText&&, Upp::Zoom) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:368 (ide+0x7c0007) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::RichTextView::SetQTF(char const*, Upp::Zoom) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:374 (ide+0x7bf77c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 AboutDlg::AboutDlg() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:197 (ide+0x483c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::About() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:229 (ide+0x38c431) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T10:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #15 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Mutex M1 (0x7ffe5f8ef038) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::RichText::RichText() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/Text.h:140 (ide+0x46b75f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::RichTextView::RichTextView() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:453 (ide+0x7c06b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 AboutDlg::AboutDlg() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:192 (ide+0x483b17) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::About() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:229 (ide+0x38c431) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Thread T10 (tid=4130, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0, write M1):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::WString::WString(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:227 (ide+0xa3e356) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::String::ToWString() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.cpp:214 (ide+0xb43c53) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::RichPara::FormatLines(int, Upp::RichPara::Number const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/ParaType.cpp:255 (ide+0x1136532) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::RichTxt::Sync0(Upp::RichTxt::Para const&, int, Upp::RichContext const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:29 (ide+0x114a59b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::RichTxt::Sync(int, Upp::RichContext const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:59 (ide+0x114ac16) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::RichTxt::Advance(int, Upp::RichContext&, Upp::RichContext&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:89 (ide+0x1142ad9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::RichTxt::GetHeight(Upp::RichContext) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TxtPaint.cpp:167 (ide+0x114b4ae) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::RichText::GetHeight(Upp::Rect_<int> const&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/TextPaint.cpp:8 (ide+0x11425d9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::RichTextView::SetSb() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:78 (ide+0x7bc89c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::RichTextView::Pick(Upp::RichText&&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:360 (ide+0x7bff19) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::RichTextView::Pick(Upp::RichText&&, Upp::Zoom) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:368 (ide+0x7c0007) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::RichTextView::SetQTF(char const*, Upp::Zoom) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:374 (ide+0x7bf77c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 AboutDlg::AboutDlg() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:197 (ide+0x483c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::About() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:229 (ide+0x38c431) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T10:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Mutex M1 (0x7ffe5f8ef038) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::RichText::RichText() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/RichText/Text.h:140 (ide+0x46b75f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::RichTextView::RichTextView() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/RichTextView.cpp:453 (ide+0x7c06b4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 AboutDlg::AboutDlg() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:192 (ide+0x483b17) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::About() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/About.cpp:229 (ide+0x38c431) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Thread T10 (tid=4130, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T13:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 DoAnnotations(CurrentFileClang&, long long) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:80 (ide+0x9eee20) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 CurrentFileThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:246 (ide+0x9f11d4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 SetCurrentFile(CurrentFileContext const&, Upp::Function<void (CppFileInfo const&, Upp::Vector<Diagnostic> const&)>)::$_0::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:290 (ide+0x9fa3a1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void ()>::Wrapper<SetCurrentFile(CurrentFileContext const&, Upp::Function<void (CppFileInfo const&, Upp::Vector<Diagnostic> const&)>)::$_0>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa2d9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::LineEdit::Paint0(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:553 (ide+0x749298) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::LineEdit::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:757 (ide+0x74c3a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::CodeEditor::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:107 (ide+0x70486b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #19 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T13 (tid=4134, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 SetCurrentFile(CurrentFileContext const&, Upp::Function<void (CppFileInfo const&, Upp::Vector<Diagnostic> const&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:290 (ide+0x9f1a07) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 AssistEditor::SyncCurrentFile(CurrentFileContext const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:468 (ide+0x32af74) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 AssistEditor::NewFile(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:692 (ide+0x30aee5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::EditFile0(Upp::String const&, unsigned char, int, Upp::String const&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:661 (ide+0x30553f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::FileCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:114 (ide+0x30327c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 non-virtual thunk to Ide::FileCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:? (ide+0x30562c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x50e39d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Function<void ()>::Wrapper<Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x50e259) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::ColumnList::SetCursor0(int, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:595 (ide+0x7adbb0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::ColumnList::SetCursor(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:600 (ide+0x7afdc6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::FileList::FindSetCursor(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:355 (ide+0x81e996) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Ide::EditFile(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:842 (ide+0x2e350b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:189 (ide+0x2f7550) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T10:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::LineEdit::Paint0(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:553 (ide+0x749298) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::LineEdit::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:757 (ide+0x74c3a9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::CodeEditor::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:107 (ide+0x70486b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #19 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T10 (tid=4130, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WStringBuffer::Begin() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:882 (ide+0x4d015e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::WStringBuffer::operator unsigned int*() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:889 (ide+0xb4ae35) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUpper(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2129 (ide+0xb487c5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49249) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Navigator::Search() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Navigator.cpp:373 (ide+0x328f9b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 AssistEditor::SetAnnotations(CppFileInfo const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:453 (ide+0x3286f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 AssistEditor::NewFile(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:686 (ide+0x30ad0f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::EditFile0(Upp::String const&, unsigned char, int, Upp::String const&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:661 (ide+0x30553f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::FileCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:114 (ide+0x30327c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 non-virtual thunk to Ide::FileCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:? (ide+0x30562c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x50e39d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void ()>::Wrapper<Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x50e259) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::ColumnList::SetCursor0(int, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:595 (ide+0x7adbb0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::ColumnList::SetCursor(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:600 (ide+0x7afdc6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::PackageCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:247 (ide+0x2fa12c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 non-virtual thunk to Ide::PackageCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:? (ide+0x2fa28c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x50e39d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::Wrapper<Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x50e259) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::ColumnList::SetCursor0(int, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:595 (ide+0x7adbb0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::ColumnList::SetCursor(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:600 (ide+0x7afdc6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::FileList::FindSetCursor(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:355 (ide+0x81e996) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Ide::SerializeWorkspace(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:38 (ide+0x2f0e63) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x53259d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Function<void (Upp::Stream&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}>::Execute(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x532449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Function<void (Upp::Stream&)>::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0xaecc24) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::CheckedSerialize(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1281 (ide+0xa5d34e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Store(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1316 (ide+0xa5d851) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::StoreToFile(Upp::Function<void (Upp::Stream&)>, char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1331 (ide+0xa5dcb6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Ide::SaveWorkspace() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:275 (ide+0x2f76d0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:197 (ide+0x2f983f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #44 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #45 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #46 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #47 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #48 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #49 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #50 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #51 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #52 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #53 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #54 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #55 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #56 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #57 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #58 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #59 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #60 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::TextCtrl::GetW(long long, int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:717 (ide+0x7402a5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::TextCtrl::Get(long long, int, unsigned char) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:748 (ide+0x7407e3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::CodeEditor::GetWord(long long) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:779 (ide+0x70ac7b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::CodeEditor::GetWord() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:784 (ide+0x70ad04) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::HelpMenu(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:960 (ide+0x38b3bc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1038 (ide+0x38d411) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Ide::SetBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1067 (ide+0x2f20b7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Ide::PackageCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:250 (ide+0x2fa1d7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 non-virtual thunk to Ide::PackageCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:? (ide+0x2fa28c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x50e39d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x50e259) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::ColumnList::SetCursor0(int, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:595 (ide+0x7adbb0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::ColumnList::SetCursor(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:600 (ide+0x7afdc6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::FileList::FindSetCursor(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:355 (ide+0x81e996) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Ide::SerializeWorkspace(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:38 (ide+0x2f0e63) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x53259d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Function<void (Upp::Stream&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}>::Execute(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x532449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Function<void (Upp::Stream&)>::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0xaecc24) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::CheckedSerialize(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1281 (ide+0xa5d34e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Store(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1316 (ide+0xa5d851) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::StoreToFile(Upp::Function<void (Upp::Stream&)>, char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1331 (ide+0xa5dcb6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Ide::SaveWorkspace() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:275 (ide+0x2f76d0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:197 (ide+0x2f983f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #44 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #45 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #46 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #47 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #48 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #49 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #50 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #51 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #52 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #53 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #54 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #55 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #56 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #57 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::GetPos(Upp::MultiButton::SubButton&, int&, int&, int&, int&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:297 (ide+0x793c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::Lay(Upp::Rect_<int>&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:384 (ide+0x794882) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::MultiButtonFrame::FrameLayout(Upp::Rect_<int>&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:844 (ide+0x799a2d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 non-virtual thunk to Upp::MultiButtonFrame::FrameLayout(Upp::Rect_<int>&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:? (ide+0x799a8c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::SyncLayout(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlPos.cpp:166 (ide+0x10a02cc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::RefreshLayout() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:1152 (ide+0x4cda4a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::MultiButton::SubButton::Refresh() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:53 (ide+0x792117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::MultiButton::SubButton::Enable(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:105 (ide+0x792502) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::DropChoice::EnableDrop(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/DropChoice.cpp:29 (ide+0x7a1860) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::DropChoice::SerializeList(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/DropChoice.cpp:181 (ide+0x7a2c08) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::WithDropChoice<Upp::EditString>::SerializeList(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/DropChoice.h:346 (ide+0x453b8c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::CodeEditor::SerializeFind(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/FindReplace.cpp:842 (ide+0x6e7f23) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::CodeEditor::Serialize(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:1292 (ide+0x70f1b3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Ide::SerializeWorkspace(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:70 (ide+0x2f11ef) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x53259d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Function<void (Upp::Stream&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}>::Execute(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x532449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Function<void (Upp::Stream&)>::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0xaecc24) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::CheckedSerialize(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1281 (ide+0xa5d34e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Store(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1316 (ide+0xa5d851) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::StoreToFile(Upp::Function<void (Upp::Stream&)>, char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1331 (ide+0xa5dcb6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Ide::SaveWorkspace() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:275 (ide+0x2f76d0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:197 (ide+0x2f983f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #44 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #45 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #46 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #47 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #48 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #49 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #50 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #51 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #52 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #53 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #54 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #55 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #15 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #17 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::GetPos(Upp::MultiButton::SubButton&, int&, int&, int&, int&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:297 (ide+0x793c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::Lay(Upp::Rect_<int>&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:384 (ide+0x794882) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::MultiButtonFrame::FrameLayout(Upp::Rect_<int>&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:844 (ide+0x799a2d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 non-virtual thunk to Upp::MultiButtonFrame::FrameLayout(Upp::Rect_<int>&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:? (ide+0x799a8c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::SyncLayout(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlPos.cpp:166 (ide+0x10a02cc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::RefreshLayout() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:1152 (ide+0x4cda4a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::MultiButton::SubButton::Refresh() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:53 (ide+0x792117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::MultiButton::SubButton::Enable(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:105 (ide+0x792502) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::DropChoice::EnableDrop(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/DropChoice.cpp:29 (ide+0x7a1860) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::DropChoice::SerializeList(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/DropChoice.cpp:181 (ide+0x7a2c08) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::WithDropChoice<Upp::EditString>::SerializeList(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/DropChoice.h:346 (ide+0x453b8c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 AssistEditor::SerializeNavigatorWorkspace(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:1235 (ide+0x2f1c4a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Ide::SerializeWorkspace(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:130 (ide+0x2f19cc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x53259d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void (Upp::Stream&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Stream&>(Ide*, void (Ide::*)(Upp::Stream&))::{lambda(Upp::Stream&)#1}>::Execute(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x532449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Function<void (Upp::Stream&)>::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0xaecc24) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::CheckedSerialize(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1281 (ide+0xa5d34e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Store(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1316 (ide+0xa5d851) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::StoreToFile(Upp::Function<void (Upp::Stream&)>, char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1331 (ide+0xa5dcb6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Ide::SaveWorkspace() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:275 (ide+0x2f76d0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:197 (ide+0x2f983f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #44 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #45 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #46 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #47 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #48 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #49 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #50 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #51 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #52 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #53 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #54 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #15 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #17 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #19 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::LineEdit::GetColumnLine(long long) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:841 (ide+0x745cfb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 AssistEditor::SyncParamInfo() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ParamInfo.cpp:64 (ide+0x333046) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 AssistEditor::SelectionChanged() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:1193 (ide+0x33245c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::LineEdit::PlaceCaretNoG(long long, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:977 (ide+0x74dab6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::LineEdit::PlaceCaret(long long, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:990 (ide+0x74dd0d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::TextCtrl::Clear() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:86 (ide+0x7386eb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::LineEdit::Clear() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:55 (ide+0x744d63) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::CodeEditor::Clear() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:1329 (ide+0x70f567) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:432 (ide+0x2f046a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WStringBuffer::Begin() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:882 (ide+0x4d015e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::WStringBuffer::operator unsigned int*() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:889 (ide+0xb4ae35) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUpper(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2129 (ide+0xb487c5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49249) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::LineEdit::GetColumnLine(long long) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:841 (ide+0x745cfb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 AssistEditor::SyncParamInfo() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ParamInfo.cpp:64 (ide+0x333046) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 AssistEditor::SelectionChanged() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:1193 (ide+0x33245c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::LineEdit::PlaceCaretNoG(long long, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:977 (ide+0x74dab6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::LineEdit::PlaceCaret(long long, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:990 (ide+0x74dd0d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::LineEdit::Clear() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:59 (ide+0x744dd5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::CodeEditor::Clear() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:1329 (ide+0x70f567) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:432 (ide+0x2f046a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:882 in Upp::WStringBuffer::Begin()
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUpper(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2130 (ide+0xb48802) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49249) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #6 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #8 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #10 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #12 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::LineEdit::GetColumnLine(long long) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/LineEdit.cpp:841 (ide+0x745cfb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 AssistEditor::SyncParamInfo() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ParamInfo.cpp:64 (ide+0x333046) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 AssistEditor::State(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ParamInfo.cpp:98 (ide+0x33dac0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::StateDeep(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:202 (ide+0x108fdc5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::StateH(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:211 (ide+0x108ff31) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::DoKillFocus(Upp::Ptr<Upp::Ctrl>, Upp::Ptr<Upp::Ctrl>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlKbd.cpp:169 (ide+0x1095ff0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::SetFocus0(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlKbd.cpp:223 (ide+0x10965d0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::SetFocus() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlKbd.cpp:236 (ide+0x1092ca0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::SetWantFocus() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:401 (ide+0x10905af) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::IterateFocusFw(Upp::Ctrl*, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlChild.cpp:214 (ide+0x109f17e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::IterateFocusFw(Upp::Ctrl*, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlChild.cpp:217 (ide+0x109f1ca) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::IterateFocusForward(Upp::Ctrl*, Upp::Ctrl*, bool, bool, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlChild.cpp:230 (ide+0x109207e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::Enable(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:332 (ide+0x1091bc3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::Disable() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:1278 (ide+0x44c667) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:433 (ide+0x2f0482) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #44 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #45 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #46 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49437) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsTopicFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Browser/TopicI.cpp:5 (ide+0x6b0ab0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 TopicModule::FileIcon(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Browser/TopicI.cpp:17 (ide+0x6c16c1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 IdeModule::AcceptsFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Common/Common.h:62 (ide+0x4d64e2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::IsDesignerFile(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:698 (ide+0x30b558) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1013 (ide+0x38cea4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Ide::SetBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1067 (ide+0x2f20b7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:438 (ide+0x2f04f8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WStringBuffer::Begin() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:882 (ide+0x4d015e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::WStringBuffer::operator unsigned int*() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/String.h:889 (ide+0xb4ae35) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToLower(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2137 (ide+0xb488c5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49449) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsTopicFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Browser/TopicI.cpp:5 (ide+0x6b0ab0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 TopicModule::FileIcon(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Browser/TopicI.cpp:17 (ide+0x6c16c1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 IdeModule::AcceptsFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Common/Common.h:62 (ide+0x4d64e2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::IsDesignerFile(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:698 (ide+0x30b558) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1013 (ide+0x38cea4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Ide::SetBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1067 (ide+0x2f20b7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:438 (ide+0x2f04f8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::TextCtrl::GetW(long long, int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:701 (ide+0x74003a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::TextCtrl::Get(long long, int, unsigned char) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:748 (ide+0x7407e3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::CodeEditor::GetWord(long long) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:779 (ide+0x70ac7b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::CodeEditor::GetWord() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:784 (ide+0x70ad04) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::HelpMenu(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:960 (ide+0x38b3bc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1038 (ide+0x38d411) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Ide::SetBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1067 (ide+0x2f20b7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:438 (ide+0x2f04f8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #42 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #43 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #44 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::TextCtrl::GetW(long long, int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:717 (ide+0x7402a5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::TextCtrl::Get(long long, int, unsigned char) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:748 (ide+0x7407e3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::CodeEditor::GetWord(long long) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:779 (ide+0x70ac7b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::CodeEditor::GetWord() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:784 (ide+0x70ad04) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::HelpMenu(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:960 (ide+0x38b3bc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1038 (ide+0x38d411) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Ide::SetBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1067 (ide+0x2f20b7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Ide::FlushFile() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:438 (ide+0x2f04f8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Ide::Exit() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:198 (ide+0x2f984d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Function<void ()>::Wrapper2<Upp::Function<void ()> >::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:36 (ide+0x49fb30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::MenuItem::LeftUp(Upp::Point_<int>, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MenuItem.cpp:412 (ide+0x8eeeb9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::MouseEvent(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:190 (ide+0x10ad0cb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::Ctrl::MouseEvent0(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:96 (ide+0x10abf10) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::Ctrl::MouseEventH(int, Upp::Point_<int>, int, unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:116 (ide+0x10ac5a6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::Ctrl::MEvent0(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:364 (ide+0x10ae8f6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af20f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #27 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Upp::Ctrl::DispatchMouseEvent(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:648 (ide+0x10af1b2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Upp::Ctrl::DispatchMouse(int, Upp::Point_<int>, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMouse.cpp:622 (ide+0x10b2620) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Ctrl::DispatchMouseIn(int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:454 (ide+0x10d568d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Ctrl::GtkMouseEvent(int, int, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:464 (ide+0x10d5806) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::Ctrl::GtkButtonEvent(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:488 (ide+0x10d5bd0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #33 Upp::Ctrl::Proc() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:591 (ide+0x10d64d8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #34 Upp::Ctrl::ProcessEvent0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:776 (ide+0x10d839c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #35 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:803 (ide+0x10d85c8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #36 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #37 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #38 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #39 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #40 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #41 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Read of size 1 at 0x55d93c155d28 by main thread (mutexes: write M0):
    #0 IsCurrentFileParsing() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:313 (ide+0x9f1dcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Ide::SyncClang() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:713 (ide+0x2fd7ef) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Ide::Periodic() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:675 (ide+0x2fd21d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x52c17d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::Function<void ()>::Wrapper<Upp::callback<Ide, Ide>(Ide*, void (Ide::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x52c039) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Ctrl::TimerProc(unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlTimer.cpp:136 (ide+0x10b71b3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:804 (ide+0x10d8610) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 1 at 0x55d93c155d28 by thread T13:
    #0 CurrentFileThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:239 (ide+0x9f0faa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 SetCurrentFile(CurrentFileContext const&, Upp::Function<void (CppFileInfo const&, Upp::Vector<Diagnostic> const&)>)::$_0::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:290 (ide+0x9fa3a1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Function<void ()>::Wrapper<SetCurrentFile(CurrentFileContext const&, Upp::Function<void (CppFileInfo const&, Upp::Vector<Diagnostic> const&)>)::$_0>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa2d9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dcd28)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T13 (tid=4134, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 SetCurrentFile(CurrentFileContext const&, Upp::Function<void (CppFileInfo const&, Upp::Vector<Diagnostic> const&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:290 (ide+0x9f1a07) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 AssistEditor::SyncCurrentFile(CurrentFileContext const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:468 (ide+0x32af74) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 AssistEditor::NewFile(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Assist.cpp:692 (ide+0x30aee5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::EditFile0(Upp::String const&, unsigned char, int, Upp::String const&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:661 (ide+0x30553f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::FileCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:114 (ide+0x30327c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 non-virtual thunk to Ide::FileCursor() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:? (ide+0x30562c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x50e39d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Function<void ()>::Wrapper<Upp::callback<WorkspaceWork, WorkspaceWork>(WorkspaceWork*, void (WorkspaceWork::*)())::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x50e259) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::Action() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:418 (ide+0x10930db) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::ColumnList::SetCursor0(int, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:595 (ide+0x7adbb0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::ColumnList::SetCursor(int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:600 (ide+0x7afdc6) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::FileList::FindSetCursor(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:355 (ide+0x81e996) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Ide::EditFile(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:842 (ide+0x2e350b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:189 (ide+0x2f7550) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/CurrentFile.cpp:313 in IsCurrentFileParsing()
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::GetPos(Upp::MultiButton::SubButton&, int&, int&, int&, int&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:297 (ide+0x793c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::GetLR(int&, int&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:339 (ide+0x794251) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::MultiButton::Paint0(Upp::Draw&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:450 (ide+0x7953c3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::MultiButton::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:414 (ide+0x794f3b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #20 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::GetPos(Upp::MultiButton::SubButton&, int&, int&, int&, int&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:297 (ide+0x793c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::Paint0(Upp::Draw&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:472 (ide+0x795a2d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::MultiButton::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:414 (ide+0x794f3b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #19 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #15 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #17 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #19 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #21 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #23 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #25 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #27 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #28 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #29 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #30 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #31 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #32 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::GetPos(Upp::MultiButton::SubButton&, int&, int&, int&, int&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:297 (ide+0x793c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::GetLR(int&, int&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:339 (ide+0x794251) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::MultiButton::Paint0(Upp::Draw&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:450 (ide+0x7953c3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::MultiButton::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:414 (ide+0x794f3b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #20 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #26 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::GetPos(Upp::MultiButton::SubButton&, int&, int&, int&, int&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:297 (ide+0x793c81) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::Paint0(Upp::Draw&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:472 (ide+0x795a2d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::MultiButton::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:414 (ide+0x794f3b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #19 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #25 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextUnicode(char const*, int, unsigned char, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:25 (ide+0xf8389f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::GetTextSize(char const*, unsigned char, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:239 (ide+0xf8677f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::GetTextSize(char const*, Upp::Font, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:244 (ide+0xf868a2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GetTextSize(Upp::String const&, Upp::Font) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Draw/DrawText.cpp:249 (ide+0xf86943) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::MultiButton::Paint0(Upp::Draw&, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:511 (ide+0x79683c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::MultiButton::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/MultiButton.cpp:414 (ide+0x794f3b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #18 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::WString::WString(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:217 (ide+0xa3e16b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::FileList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:136 (ide+0x81c40e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 non-virtual thunk to Upp::FileList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:? (ide+0x81c649) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::ColumnList::PaintItem(Upp::Draw&, int, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:387 (ide+0x7b0668) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::ColumnList::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:410 (ide+0x7b08fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #17 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::WString::WString(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:217 (ide+0xa3e16b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::FileList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:136 (ide+0x81c40e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 UppList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/UppWspc.cpp:1233 (ide+0x2cce45) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 non-virtual thunk to UppList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/UppWspc.cpp:? (ide+0x2ccf79) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::ColumnList::PaintItem(Upp::Draw&, int, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:387 (ide+0x7b0668) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::ColumnList::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:410 (ide+0x7b08fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #18 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::WString::WString(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:217 (ide+0xa3e16b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::FileList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:136 (ide+0x81c40e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 UppList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/UppWspc.cpp:1233 (ide+0x2cce45) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 non-virtual thunk to UppList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/UppWspc.cpp:? (ide+0x2ccf79) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::ColumnList::PaintItem(Upp::Draw&, int, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:387 (ide+0x7b0668) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::ColumnList::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:410 (ide+0x7b08fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #18 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUpper(Upp::WString const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2130 (ide+0xb48802) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49249) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #6 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #8 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUnicode(char const*, int, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2047 (ide+0xb47d0e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::WString::WString(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:217 (ide+0xa3e16b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::FileList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/FileList.cpp:136 (ide+0x81c40e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 UppList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/UppWspc.cpp:1233 (ide+0x2cce45) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 non-virtual thunk to UppList::Paint(Upp::Draw&, Upp::Rect_<int> const&, Upp::Value const&, Upp::Color, Upp::Color, unsigned int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/UppWspc.cpp:? (ide+0x2ccf79) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::ColumnList::PaintItem(Upp::Draw&, int, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:387 (ide+0x7b0668) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::ColumnList::Paint(Upp::Draw&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ColumnList.cpp:410 (ide+0x7b08fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:334 (ide+0x10a7ab3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:313 (ide+0x10a789b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::Ctrl::CtrlPaint(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:350 (ide+0x10a7e3a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::Ctrl::UpdateArea0(Upp::SystemDraw&, Upp::Rect_<int> const&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:508 (ide+0x10a9c82) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Ctrl::UpdateArea(Upp::SystemDraw&, Upp::Rect_<int> const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlDraw.cpp:558 (ide+0x10a9fd3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Ctrl::GtkDraw(_GtkWidget*, _cairo*, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:129 (ide+0x10d3459) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 <null> <null> (libgtk-3.so.0+0x96027) (BuildId: 404ca5aaad047b1025d5042c3f0f9f058824aaf2)
    #18 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:812 (ide+0x10d86fa) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::EventLoop(Upp::Ctrl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:854 (ide+0x10bb255) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::TopWindow::Run(bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/TopWindow.cpp:323 (ide+0x10c1d66) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:437 (ide+0x3a515e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 1 at 0x55d93ac4e670 by main thread (mutexes: write M0):
    #0 Upp::Stream::operator%(bool&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.h:202 (ide+0x4580f8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 ClangConfigSerialize(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/util.cpp:15 (ide+0x9e0736) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Ide::Serialize(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:381 (ide+0x2f3c8e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Stream& Upp::operator%<Ide>(Upp::Stream&, Ide&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.h:574 (ide+0x532cee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::Store<Ide>(Ide&, Upp::Stream&, int)::{lambda(Upp::Stream&)#1}::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Util.h:395 (ide+0x532c7d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::Function<void (Upp::Stream&)>::Wrapper<Upp::Store<Ide>(Ide&, Upp::Stream&, int)::{lambda(Upp::Stream&)#1}>::Execute(Upp::Stream&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x532b89) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::Function<void (Upp::Stream&)>::operator()(Upp::Stream&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0xaecc24) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::CheckedSerialize(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1281 (ide+0xa5d34e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::Store(Upp::Function<void (Upp::Stream&)>, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.cpp:1316 (ide+0xa5d851) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 bool Upp::Store<Ide>(Ide&, Upp::Stream&, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Util.h:395 (ide+0x53296b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::String Upp::StoreAsString<Ide>(Ide&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Util.h:411 (ide+0x458e4b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Ide::SaveConfig() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:403 (ide+0x2f43d3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Ide::SaveConfigOnTime() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Config.cpp:416 (ide+0x2f48e1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:438 (ide+0x3a5174) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous read of size 1 at 0x55d93ac4e670 by thread T11:
    #0 HasLibClang() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/clang.h:39 (ide+0x45a8dd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 FetchString(CXString) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/clang.cpp:8 (ide+0x9e78bd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 ClangCursorInfo::RawId() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:55 (ide+0x9fb90b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 ClangCursorInfo::Id() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:127 (ide+0x9eb0c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor)::$_1::operator()(CXCursor) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:358 (ide+0x9edb33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:384 (ide+0x9ed528) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #8 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #10 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #12 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #14 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #16 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #18 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x1dd5670)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Stream.h:202 in Upp::Stream::operator%(bool&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c1561fc by main thread (mutexes: write M0):
    #0 Upp::Thread::BeginShutdownThreads() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:249 (ide+0xa3aae8) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Ctrl::ShutdownThreads() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:111 (ide+0x108dda5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:465 (ide+0x3a5203) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous read of size 4 at 0x55d93c1561fc by thread T14:
    #0 Upp::Thread::IsShutdownThreads() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:329 (ide+0xa3b4ec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 GatherAllFiles(Upp::String const&, Upp::Index<Upp::String>&, Upp::VectorMap<Upp::String, Upp::String>&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/background.cpp:24 (ide+0x38e04c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 IdeBackgroundThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/background.cpp:63 (ide+0x38e5a4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::Function<void ()>::Wrapper<void (*)()>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x585647) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd1fc)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T14 (tid=4135, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:168 (ide+0xa3a432) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::StartNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:473 (ide+0xa3ba99) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 StartIdeBackgroundThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/background.cpp:83 (ide+0x38e876) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:432 (ide+0x3a50ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:249 in Upp::Thread::BeginShutdownThreads()
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToLower(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2202 (ide+0xb49437) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 IsTopicFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Browser/TopicI.cpp:5 (ide+0x6b0ab0) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 TopicModule::FileIcon(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Browser/TopicI.cpp:17 (ide+0x6c16c1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 IdeModule::AcceptsFile(char const*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/Common/Common.h:62 (ide+0x4d64e2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::IsDesignerFile(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idefile.cpp:698 (ide+0x30b558) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1013 (ide+0x38cea4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Ide::Ide()::$_0::operator()() const::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idewin.cpp:374 (ide+0x42adf5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Upp::Function<void ()>::Wrapper<Ide::Ide()::$_0::operator()() const::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x42ad19) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Ctrl::TimerProc(unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlTimer.cpp:136 (ide+0x10b71b3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:804 (ide+0x10d8610) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::ShutdownThreads() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:114 (ide+0x108dddb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:465 (ide+0x3a5203) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #9 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #11 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f7179) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #13 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3f0976) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #15 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:401 (ide+0x9ede33) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #17 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
==================
WARNING: ThreadSanitizer: data race (pid=4074)
  Write of size 4 at 0x55d93c15627c by thread T11:
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::ToUpper(Upp::String const&, unsigned char) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.cpp:2191 (ide+0xb49237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 ClangVisitor::ProcessNode(CXCursor) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:340 (ide+0x9ed1f2) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 clang_visitor(CXCursor, CXCursor, void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:400 (ide+0x9edde7) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 clang_visitChildrenWithBlock ??:? (libclang.so.17.0.6+0x3ef4d4) (BuildId: 32d5a180cdef97cb7323e3f28db0a01035d029e5)
    #7 ClangVisitor::Do(CXTranslationUnitImpl*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Visitor.cpp:443 (ide+0x9ee1fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Indexer::IndexerThread() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:240 (ide+0x9f4297) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9fa891) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::Function<void ()>::Wrapper<Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&)::$_1>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x9fa7c9) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::sThreadRoutine(void*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:90 (ide+0xa3a52e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Previous write of size 4 at 0x55d93c15627c by main thread (mutexes: write M0):
    #0 Upp::WString::WString(Upp::WStringBuffer&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 (ide+0xa3df57) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::ToUtf32(char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Utf.cpp:120 (ide+0xa42c50) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::ToUtf32(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CharSet.h:97 (ide+0x485161) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::TextCtrl::GetWLine(int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/TextEdit.h:193 (ide+0x455117) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::TextCtrl::GetW(long long, int) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:701 (ide+0x74003a) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::TextCtrl::Get(long long, int, unsigned char) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/Text.cpp:748 (ide+0x7407e3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::CodeEditor::GetWord(long long) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:779 (ide+0x70ac7b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::CodeEditor::GetWord() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CodeEditor/CodeEditor.cpp:784 (ide+0x70ad04) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::HelpMenu(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:960 (ide+0x38b3bc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Ide::MainTool(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1038 (ide+0x38d411) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/CallbackNP.i:38 (ide+0x57eb8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 Upp::Function<void (Upp::Bar&)>::Wrapper<Upp::callback<Ide, Ide, Upp::Bar&>(Ide*, void (Ide::*)(Upp::Bar&))::{lambda(Upp::Bar&)#1}>::Execute(Upp::Bar&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x57ea39) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 Upp::Function<void (Upp::Bar&)>::operator()(Upp::Bar&) const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x87e574) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #13 Upp::ToolBar::Set(Upp::Function<void (Upp::Bar&)>) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolBar.cpp:99 (ide+0x7d0f4e) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #14 Ide::SetToolBar() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idebar.cpp:1082 (ide+0x38de15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #15 Ide::Ide()::$_0::operator()() const::{lambda()#1}::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/idewin.cpp:374 (ide+0x42adf5) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #16 Upp::Function<void ()>::Wrapper<Ide::Ide()::$_0::operator()() const::{lambda()#1}>::Execute() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:17 (ide+0x42ad19) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #17 Upp::Function<void ()>::operator()() const /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Function.h:86 (ide+0x451dec) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #18 Upp::Ctrl::TimerProc(unsigned int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlTimer.cpp:136 (ide+0x10b71b3) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #19 Upp::Ctrl::ProcessEvents0(bool*, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:804 (ide+0x10d8610) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #20 Upp::Ctrl::ProcessEvents(bool*) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/GtkEvent.cpp:820 (ide+0x108dede) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #21 Upp::Ctrl::ShutdownThreads() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:114 (ide+0x108dddb) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #22 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:465 (ide+0x3a5203) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #23 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #24 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

  Location is global '<null>' at 0x000000000000 (ide+0x32dd27c)

  Mutex M0 (0x55d93c1e4028) created at:
    #0 pthread_mutex_init ??:? (ide+0x221d30) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Mutex::Mutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:685 (ide+0xa3bc8d) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::StaticPrimitive_<Upp::Mutex>::Initialize() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:323 (ide+0x89a531) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Upp::StaticPrimitive_<Upp::Mutex>::Get() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:326 (ide+0x89a45f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Upp::StaticMutex::Enter() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.h:333 (ide+0xb3dc15) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Upp::EnterGuiMutex() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlMt.cpp:24 (ide+0x108d755) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Upp::GuiLock::GuiLock() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/CtrlCore.h:66 (ide+0x47fef1) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Upp::Ctrl::InstallMouseHook(bool (*)(Upp::Ctrl*, bool, int, Upp::Point_<int>, int, unsigned int)) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlCore/Ctrl.cpp:656 (ide+0x10978ee) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Upp::s__sF35_141_fn() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:143 (ide+0x7f163c) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 Upp::Callinit::Callinit(void (*)(), char const*, int) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Defs.h:86 (ide+0x44586f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 __cxx_global_var_init.127 /home/xxx/dvlp/cpp/code/upp/git/uppsrc/CtrlLib/ToolTip.cpp:141 (ide+0x1e3acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 _GLOBAL__sub_I_CtrlLib_blitz.cpp /home/xxx/dvlp/cpp/code/upp/out/CtrlLib/CLANGcpp17tsan.Debug.Debug_Full.Gui.Shared.Usemalloc/CtrlLib$blitz.cpp:? (ide+0x1e47ff) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #12 call_init csu/../csu/libc-start.c:145 (libc.so.6+0x29d75) (BuildId: 9ef99696af9dd777f27f7cd2d8eaaf7fb14dc85d)
    #13 __libc_start_main_impl csu/../csu/libc-start.c:347 (libc.so.6+0x29d75)

  Thread T11 (tid=4131, running) created by main thread at:
    #0 pthread_create ??:? (ide+0x22034b) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #1 Upp::Thread::Run(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:162 (ide+0xa3a3cd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #2 Upp::Thread::RunNice(Upp::Function<void ()>, bool) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/Mt.cpp:176 (ide+0xa3a791) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #3 Indexer::Start(Upp::String const&, Upp::String const&, Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/clang/Indexer.cpp:303 (ide+0x9f50f4) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #4 Ide::TriggerIndexer0() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:901 (ide+0x2ffe95) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #5 Ide::TriggerIndexer() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:907 (ide+0x2fb179) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #6 Ide::SyncBuildMode() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/OutputMode.cpp:436 (ide+0x2f9237) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #7 Ide::SetMain(Upp::String const&) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:183 (ide+0x2f73fd) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #8 Ide::OpenMainPackage() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/ide.cpp:222 (ide+0x2f9acf) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #9 GuiMainFn_() /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:424 (ide+0x3a5078) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #10 Upp::AppExecute__(void (*)()) /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/App.cpp:505 (ide+0xa51fcc) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)
    #11 main /home/xxx/dvlp/cpp/code/upp/git/uppsrc/ide/main.cpp:178 (ide+0x3a381f) (BuildId: b600c80c94d9e926c97084d4f9c22e2c999db8c9)

SUMMARY: ThreadSanitizer: data race /home/xxx/dvlp/cpp/code/upp/git/uppsrc/Core/WString.cpp:207 in Upp::WString::WString(Upp::WStringBuffer&)
==================
ThreadSanitizer: reported 39 warnings
