You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Jinchul Kim (JIRA)" <ji...@apache.org> on 2017/11/16 01:46:01 UTC
[jira] [Resolved] (IMPALA-6084) Avoid "using namespace llvm" in C++
source files
[ https://issues.apache.org/jira/browse/IMPALA-6084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jinchul Kim resolved IMPALA-6084.
---------------------------------
Resolution: Fixed
Fix Version/s: Impala 2.11.0
> Avoid "using namespace llvm" in C++ source files
> ------------------------------------------------
>
> Key: IMPALA-6084
> URL: https://issues.apache.org/jira/browse/IMPALA-6084
> Project: IMPALA
> Issue Type: Improvement
> Components: Backend
> Reporter: Tim Armstrong
> Assignee: Jinchul Kim
> Priority: Minor
> Labels: newbie
> Fix For: Impala 2.11.0
>
>
> There are a large number of places in the backend where we import everything from the llvm namespace into the global namespace. There's a lot of things in the llvm namespace, and it changes from version-to-version (e.g. they have llvm::make_unique). Instead of importing everything we should either import them selectively (e.g. using llvm::Function;) or just use the llvm:: prefix.
> {noformat}
> $ git grep 'using namespace lvm'
> be/src/benchmarks/hash-benchmark.cc:using namespace llvm;
> be/src/codegen/codegen-anyval.cc:using namespace llvm;
> be/src/codegen/codegen-callgraph.cc:using namespace llvm;
> be/src/codegen/codegen-symbol-emitter.cc:using namespace llvm;
> be/src/codegen/codegen-symbol-emitter.cc:using namespace llvm::object;
> be/src/codegen/codegen-util.cc:using namespace llvm;
> be/src/codegen/instruction-counter-test.cc:using namespace llvm;
> be/src/codegen/instruction-counter.cc:using namespace llvm;
> be/src/codegen/llvm-codegen-test.cc:using namespace llvm;
> be/src/codegen/llvm-codegen.cc:using namespace llvm;
> be/src/exec/blocking-join-node.cc:using namespace llvm;
> be/src/exec/exec-node.cc:using namespace llvm;
> be/src/exec/filter-context.cc:using namespace llvm;
> be/src/exec/hdfs-avro-scanner.cc:using namespace llvm;
> be/src/exec/hdfs-parquet-scanner.cc:using namespace llvm;
> be/src/exec/hdfs-scan-node-base.cc:using namespace llvm;
> be/src/exec/hdfs-scanner.cc:using namespace llvm;
> be/src/exec/hdfs-sequence-scanner.cc:using namespace llvm;
> be/src/exec/hdfs-text-scanner.cc:using namespace llvm;
> be/src/exec/partitioned-aggregation-node.cc:using namespace llvm;
> be/src/exec/text-converter.cc:using namespace llvm;
> be/src/exec/topn-node.cc:using namespace llvm;
> be/src/exec/union-node.cc:using namespace llvm;
> be/src/exprs/agg-fn-evaluator.cc:using namespace llvm;
> be/src/exprs/agg-fn.cc:using namespace llvm;
> be/src/exprs/case-expr.cc:using namespace llvm;
> be/src/exprs/compound-predicates.cc:using namespace llvm;
> be/src/exprs/expr-codegen-test.cc:using namespace llvm;
> be/src/exprs/expr-test.cc:using namespace llvm;
> be/src/exprs/literal.cc:using namespace llvm;
> be/src/exprs/null-literal.cc:using namespace llvm;
> be/src/exprs/scalar-expr.cc:using namespace llvm;
> be/src/exprs/slot-ref.cc:using namespace llvm;
> be/src/runtime/runtime-state.cc:using namespace llvm;
> be/src/runtime/tuple.cc:using namespace llvm;
> be/src/runtime/types.cc:using namespace llvm;
> be/src/util/tuple-row-compare.cc:using namespace llvm;
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)