Commit Graph

7 Commits

Author SHA1 Message Date
dmitriiut
8a7853b0a8 parser WITH FILL
some interpreter changes
2019-04-21 06:36:59 +03:00
chertus
75af882cf3 fix AST debug print with underline symbol 2018-12-07 15:34:40 +03:00
Amos Bird
ea84430864 Get rid of useless std::move to get NRVO
http://eel.is/c++draft/class.copy.elision#:constructor,copy,elision

Some quote:

> Speaking of RVO, return std::move(w); prohibits it. It means "use move constructor or fail to compile", whereas return w; means "use RVO, and if you can't, use move constructor, and if you can't, use copy constructor, and if you can't, fail to compile."

There is one exception to this rule:
```cpp
Block FilterBlockInputStream::removeFilterIfNeed(Block && block)
{
    if (block && remove_filter)
        block.erase(static_cast<size_t>(filter_column));

    return std::move(block);
}
```

because references are not eligible for NRVO, which is another rule "always move rvalue references and forward universal references" that takes precedence.
2018-08-27 22:15:48 +08:00
Alexey Milovidov
74a6b0010f utils/check-style/fix-style #2387 2018-05-18 21:30:02 +03:00
Nikolai Kochetov
f739078ea5 Fixed IAST::clone() implementations which were without children deep copy. [#CLICKHOUSE-3735] 2018-05-18 21:28:11 +03:00
Alexey Milovidov
601ff1eee4 Simplification of AST #1947 2018-02-26 06:37:08 +03:00
Alexey Milovidov
310736cd7e Moved headers and sources to same place [#CLICKHOUSE-3]. 2017-04-01 12:22:42 +03:00