La llamada a un constructor no puede aparecer en una expresión constante

Lo siento por mi pregunta de novato, pero no sé mucho acerca de C ++. ¿Alguien puede responder por qué recibo el error "error: una llamada a un constructor no puede aparecer en una expresión constante" al compilar el siguiente código;

class EliminationWeight
{
 public:
    typedef double Type;
    static const Type MAX_VALUE = __DBL_MAX__;
    static const Type MIN_VALUE = -__DBL_MAX__;
};

Yo uso Ubuntu 12.04 y gcc que viene con él. No es mi código y sé que este código probablemente funcione correctamente al 100% (quizás en una versión anterior de gcc u otro compilador). ¿Hay una manera rápida de arreglarlo?

Gracias de antemano por cualquier respuesta, esta es la primera vez que pregunto algo en SO.

Respuestas a la pregunta(3)

Su respuesta a la pregunta