Forma estándar de inicializar un new char[size] con una cadena literal en C++

desde hace unos meses estoy practicando C++ y todo me funcionaba bien hasta que actualicé mi compilador mingw a la versión mas reciente (v8) para soportar c++17.

El código que ya no me funciona es muy simple y consiste en inicializar un array char con una cadena literal y guardarlo en un puntero char.

#include <iostream>

int main() {
    
    char *frase = new char(14){"El sol brillo"}; 
    
    std::cout << frase << std::endl;

    return 0;
}

no funciona como antes:

ERROR: invalid conversion from 'const char*' to 'char'

Lo que quiero inicializar es el valor del objeto dinámico creado con new y no la variable.