**Describe the unexpected behaviour**

```
:) CREATE TEMPORARY TABLE test (x INT NOT NULL DEFAULT 1)

Syntax error: failed at position 52 ('DEFAULT') (line 3, col 22):

CREATE TEMPORARY TABLE test
(
    `x` INT NOT NULL DEFAULT 1
                     ^
)

Expected one of: COMMENT, CODEC, TTL, token, Comma, ClosingRoundBracket
```

But this query succeeded:

```
:) CREATE TEMPORARY TABLE test (x INT DEFAULT 1 NOT NULL)

CREATE TEMPORARY TABLE test
(
    `x` INT NOT NULL DEFAULT 1
)
```
{
    if (local_context->getSettingsRef().default_table_engine.value == DefaultTableEngine::None)
        throw Exception(ErrorCodes::ENGINE_REQUIRED, "Table engine is not specified in CREATE query");
    auto engine_ast = std::make_shared<ASTFunction>();
    auto default_table_engine = local_context->getSettingsRef().default_table_engine.value;
    engine_ast->name = getTableEngineName(default_table_engine);
    engine_ast->no_empty_args = true;
    storage.set(storage.engine, engine_ast);
}
void InterpreterCreateQuery::setEngine(ASTCreateQuery & create) const