You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "github-actions[bot] (via GitHub)" <gi...@apache.org> on 2023/04/23 15:12:59 UTC

[GitHub] [doris] github-actions[bot] commented on a diff in pull request #18978: [refactor](exceptionsafe) add factory creator to some class

github-actions[bot] commented on code in PR #18978:
URL: https://github.com/apache/doris/pull/18978#discussion_r1174598038


##########
be/src/vec/exprs/vdirect_in_predicate.h:
##########
@@ -62,7 +64,7 @@ class VDirectInPredicate final : public VExpr {
     }
 
     VExpr* clone(doris::ObjectPool* pool) const override {
-        return pool->add(new VDirectInPredicate(*this));
+        return pool->add(VDirectInPredicate::create_unique(*this).release());

Review Comment:
   warning: member access into incomplete type 'doris::ObjectPool' [clang-diagnostic-error]
   ```cpp
           return pool->add(VDirectInPredicate::create_unique(*this).release());
                      ^
   ```
   **be/src/util/runtime_profile.h:76:** forward declaration of 'doris::ObjectPool'
   ```cpp
   class ObjectPool;
         ^
   ```
   



##########
be/src/vec/exprs/vlambda_function_call_expr.h:
##########
@@ -28,12 +28,14 @@
 namespace doris::vectorized {
 
 class VLambdaFunctionCallExpr : public VExpr {
+    ENABLE_FACTORY_CREATOR(VLambdaFunctionCallExpr);
+
 public:
     VLambdaFunctionCallExpr(const TExprNode& node) : VExpr(node) {}
     ~VLambdaFunctionCallExpr() override = default;
 
     VExpr* clone(ObjectPool* pool) const override {
-        return pool->add(new VLambdaFunctionCallExpr(*this));
+        return pool->add(VLambdaFunctionCallExpr::create_unique(*this).release());

Review Comment:
   warning: member access into incomplete type 'doris::ObjectPool' [clang-diagnostic-error]
   ```cpp
           return pool->add(VLambdaFunctionCallExpr::create_unique(*this).release());
                      ^
   ```
   **be/src/util/runtime_profile.h:76:** forward declaration of 'doris::ObjectPool'
   ```cpp
   class ObjectPool;
         ^
   ```
   



##########
be/src/vec/exprs/vlambda_function_expr.h:
##########
@@ -32,7 +34,7 @@ class VLambdaFunctionExpr final : public VExpr {
     }
 
     VExpr* clone(doris::ObjectPool* pool) const override {
-        return pool->add(new VLambdaFunctionExpr(*this));
+        return pool->add(VLambdaFunctionExpr::create_unique(*this).release());

Review Comment:
   warning: member access into incomplete type 'doris::ObjectPool' [clang-diagnostic-error]
   ```cpp
           return pool->add(VLambdaFunctionExpr::create_unique(*this).release());
                      ^
   ```
   **be/src/util/runtime_profile.h:76:** forward declaration of 'doris::ObjectPool'
   ```cpp
   class ObjectPool;
         ^
   ```
   



##########
be/src/vec/exprs/vcolumn_ref.h:
##########
@@ -52,7 +54,7 @@ class VColumnRef final : public VExpr {
     }
 
     VExpr* clone(doris::ObjectPool* pool) const override {
-        return pool->add(new VColumnRef(*this));
+        return pool->add(VColumnRef::create_unique(*this).release());

Review Comment:
   warning: member access into incomplete type 'doris::ObjectPool' [clang-diagnostic-error]
   ```cpp
           return pool->add(VColumnRef::create_unique(*this).release());
                      ^
   ```
   **be/src/runtime/descriptors.h:50:** forward declaration of 'doris::ObjectPool'
   ```cpp
   class ObjectPool;
         ^
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org