Skip to content
  • Michael Catanzaro's avatar
    Add separate definitions of g_assert_[non]null() for C++ · 4a0ce6b4
    Michael Catanzaro authored
    In C++ we can use nullptr to ensure g_assert_[non]null() is only called
    with pointers. This will introduce build failures in tests that would
    have previously compiled, but only in C++, and only for code that
    misused these macros. Code using the macros properly will be fine.
    
    This change caught a couple bugs in WebKit's API tests, where I had
    accidentally used these functions improperly. E.g. this is now a build
    failure in C++:
    
    g_assert_null(webkit_context_menu_get_n_items(menu)); /* Oops! */
    
    Either I wanted to use cmpuint there, or I wanted to use
    webkit_context_menu_get_items() to receive a GList* instead.
    
    Another example that will no longer build in C++:
    
    g_assert_null(0); /* Contrived, but 0 is not a pointer! */
    4a0ce6b4