Skip to content

NULL without context should be of type Any instead of Unknown

FROM: !1444 (comment 122460)

Мне кажется, Unknown не нужен. NULL без контекста имеет тип Any, т.е. он унифицируется со значением любого типа. Дальше можно уточнять, что, например, в выражении 2 = NULL, NULL должен иметь тип integer или unsigned...

В исходном коде нас интересует этот кусочек:

    #[must_use]
    pub fn get_type(&self) -> DerivedType {
        let ty = match self {
            /* cut */
            Value::Null => return DerivedType::unknown(),
        };
        DerivedType::new(ty)
    }

Возможно, это не единственный отрывок кода, см. !1598 (commits).

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information