Priority: 4
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 3
- - Regex: '^"\.\./'
+ - Regex: '^"(flang|\.\.)/'
Priority: 2
- Regex: '.*'
Priority: 1
-//===-- lib/common/Fortran-features.h ---------------------------*- C++ -*-===//
+//===-- include/flang/common/Fortran-features.h -----------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_COMMON_FORTRAN_FEATURES_H_
#define FORTRAN_COMMON_FORTRAN_FEATURES_H_
-#include "Fortran.h"
-#include "enum-set.h"
-#include "idioms.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/idioms.h"
namespace Fortran::common {
-//===-- lib/common/Fortran.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/common/Fortran.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/bit-population-count.h -----------------------*- C++ -*-===//
+//===-- include/flang/common/bit-population-count.h -------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/constexpr-bitset.h ---------------------------*- C++ -*-===//
+//===-- include/flang/common/constexpr-bitset.h -----------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/default-kinds.h ------------------------------*- C++ -*-===//
+//===-- include/flang/common/default-kinds.h --------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_COMMON_DEFAULT_KINDS_H_
#define FORTRAN_COMMON_DEFAULT_KINDS_H_
-#include "Fortran.h"
+#include "flang/common/Fortran.h"
#include <cstdint>
namespace Fortran::common {
-//===-- lib/common/enum-set.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/common/enum-set.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/format.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/common/format.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_COMMON_FORMAT_H_
#define FORTRAN_COMMON_FORMAT_H_
-#include "Fortran.h"
#include "enum-set.h"
+#include "flang/common/Fortran.h"
#include <cstring>
// Define a FormatValidator class template to validate a format expression
-//===-- lib/common/idioms.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/common/idioms.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/indirection.h --------------------------------*- C++ -*-===//
+//===-- include/flang/common/indirection.h ----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/interval.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/common/interval.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/leading-zero-bit-count.h ---------------------*- C++ -*-===//
+//===-- include/flang/common/leading-zero-bit-count.h -----------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/reference-counted.h --------------------------*- C++ -*-===//
+//===-- include/flang/common/reference-counted.h ----------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/reference.h ----------------------------------*- C++ -*-===//
+//===-- include/flang/common/reference.h ------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/restorer.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/common/restorer.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/template.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/common/template.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_COMMON_TEMPLATE_H_
#define FORTRAN_COMMON_TEMPLATE_H_
+#include "flang/common/idioms.h"
#include <functional>
#include <optional>
#include <tuple>
-//===-- lib/common/uint128.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/common/uint128.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/unsigned-const-division.h --------------------*- C++ -*-===//
+//===-- include/flang/common/unsigned-const-division.h ----------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/common/unwrap.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/common/unwrap.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/decimal/binary-floating-point.h ---------------------*- C++ -*-===//
+//===-- include/flang/decimal/binary-floating-point.h -----------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// Access and manipulate the fields of an IEEE-754 binary
// floating-point value via a generalized template.
-#include "../common/uint128.h"
+#include "flang/common/uint128.h"
#include <cinttypes>
#include <climits>
#include <cstring>
-/*===-- lib/decimal/decimal.h -------------------------------------*- C++ -*-===
+/*===-- include/flang/decimal/decimal.h ---------------------------*- C++ -*-===
*
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
* See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/call.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/call.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "constant.h"
#include "formatting.h"
#include "type.h"
-#include "../common/indirection.h"
-#include "../common/reference.h"
-#include "../parser/char-block.h"
-#include "../semantics/attr.h"
+#include "flang/common/indirection.h"
+#include "flang/common/reference.h"
+#include "flang/parser/char-block.h"
+#include "flang/semantics/attr.h"
#include <optional>
#include <ostream>
#include <vector>
-//===-- lib/evaluate/characteristics.h --------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/characteristics.h ----------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "expression.h"
#include "shape.h"
#include "type.h"
-#include "../common/Fortran.h"
-#include "../common/enum-set.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
-#include "../parser/char-block.h"
-#include "../semantics/symbol.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/parser/char-block.h"
+#include "flang/semantics/symbol.h"
#include <optional>
#include <ostream>
#include <string>
-//===-- lib/evaluate/check-expression.h -------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/check-expression.h ---------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/common.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/common.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#define FORTRAN_EVALUATE_COMMON_H_
#include "intrinsics-library.h"
-#include "../common/Fortran.h"
-#include "../common/default-kinds.h"
-#include "../common/enum-set.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
-#include "../common/restorer.h"
-#include "../parser/char-block.h"
-#include "../parser/message.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/default-kinds.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/common/restorer.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/message.h"
#include <cinttypes>
#include <map>
-//===-- lib/evaluate/complex.h ----------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/complex.h ------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/constant.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/constant.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "formatting.h"
#include "type.h"
-#include "../common/default-kinds.h"
-#include "../common/reference.h"
+#include "flang/common/default-kinds.h"
+#include "flang/common/reference.h"
#include <map>
#include <ostream>
#include <vector>
-//===-- lib/evaluate/expression.h -------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/expression.h ---------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "formatting.h"
#include "type.h"
#include "variable.h"
-#include "../common/Fortran.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
-#include "../common/template.h"
-#include "../parser/char-block.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/common/template.h"
+#include "flang/parser/char-block.h"
#include <algorithm>
#include <list>
#include <ostream>
-//===-- lib/evaluate/fold.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/fold.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/formatting.h -------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/formatting.h ---------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// This header is meant to be included by the headers that define the several
// representational class templates that need it, not by external clients.
-#include "../common/indirection.h"
+#include "flang/common/indirection.h"
#include <optional>
#include <ostream>
#include <type_traits>
-//===-- lib/evaluate/integer.h ----------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/integer.h ------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// (*"Signed" here means two's-complement, just to be clear. Ones'-complement
// and signed-magnitude encodings appear to be extinct in 2018.)
-#include "common.h"
-#include "../common/bit-population-count.h"
-#include "../common/leading-zero-bit-count.h"
+#include "flang/common/bit-population-count.h"
+#include "flang/common/leading-zero-bit-count.h"
+#include "flang/evaluate/common.h"
#include <cinttypes>
#include <climits>
#include <cstddef>
-//===-- lib/evaluate/intrinsics-library.h -----------------------*- C++ -*-===//
+//===-- include/flang/evaluate/intrinsics-library.h -------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/intrinsics.h -------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/intrinsics.h ---------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "call.h"
#include "characteristics.h"
#include "type.h"
-#include "../common/default-kinds.h"
-#include "../parser/char-block.h"
-#include "../parser/message.h"
+#include "flang/common/default-kinds.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/message.h"
#include <optional>
#include <ostream>
#include <string>
-//===-- lib/evaluate/logical.h ----------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/logical.h ------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/real.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/real.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_EVALUATE_REAL_H_
#define FORTRAN_EVALUATE_REAL_H_
-#include "common.h"
#include "formatting.h"
#include "integer.h"
#include "rounding-bits.h"
+#include "flang/evaluate/common.h"
#include <cinttypes>
#include <limits>
#include <ostream>
-//===-- lib/evaluate/rounding-bits.h ----------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/rounding-bits.h ------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/evaluate/shape.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/shape.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#define FORTRAN_EVALUATE_SHAPE_H_
#include "expression.h"
-#include "tools.h"
#include "traverse.h"
-#include "type.h"
#include "variable.h"
-#include "../common/indirection.h"
+#include "flang/common/indirection.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
#include <optional>
#include <variant>
-//===-- lib/evaluate/static-data.h ------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/static-data.h --------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "formatting.h"
#include "type.h"
-#include "../common/idioms.h"
+#include "flang/common/idioms.h"
#include <cinttypes>
#include <memory>
#include <optional>
-//===-- lib/evaluate/tools.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/tools.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_EVALUATE_TOOLS_H_
#define FORTRAN_EVALUATE_TOOLS_H_
-#include "constant.h"
-#include "expression.h"
#include "traverse.h"
-#include "../common/idioms.h"
-#include "../common/template.h"
-#include "../common/unwrap.h"
-#include "../parser/message.h"
-#include "../semantics/attr.h"
-#include "../semantics/symbol.h"
+#include "flang/common/idioms.h"
+#include "flang/common/template.h"
+#include "flang/common/unwrap.h"
+#include "flang/evaluate/constant.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/attr.h"
+#include "flang/semantics/symbol.h"
#include <array>
#include <optional>
#include <set>
-//===-- lib/evaluate/traverse.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/traverse.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// - Overloads of operator() in each visitor handle the cases of interest.
#include "expression.h"
-#include "../semantics/symbol.h"
-#include "../semantics/type.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/type.h"
#include <set>
#include <type_traits>
-//===-- lib/evaluate/type.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/type.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "integer.h"
#include "logical.h"
#include "real.h"
-#include "../common/Fortran.h"
-#include "../common/idioms.h"
-#include "../common/template.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
+#include "flang/common/template.h"
#include <cinttypes>
#include <optional>
#include <string>
-//===-- lib/evaluate/variable.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/evaluate/variable.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "formatting.h"
#include "static-data.h"
#include "type.h"
-#include "../common/idioms.h"
-#include "../common/reference.h"
-#include "../common/template.h"
-#include "../parser/char-block.h"
+#include "flang/common/idioms.h"
+#include "flang/common/reference.h"
+#include "flang/common/template.h"
+#include "flang/parser/char-block.h"
#include <optional>
#include <ostream>
#include <variant>
-//===-- lib/parser/char-block.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/parser/char-block.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// Describes a contiguous block of characters; does not own their storage.
-#include "../common/interval.h"
+#include "flang/common/interval.h"
#include <algorithm>
#include <cstddef>
#include <cstring>
-//===-- lib/parser/char-buffer.h --------------------------------*- C++ -*-===//
+//===-- include/flang/parser/char-buffer.h ----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/char-set.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/parser/char-set.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/characters.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/parser/characters.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/dump-parse-tree.h ----------------------------*- C++ -*-===//
+//===-- include/flang/parser/dump-parse-tree.h ------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "parse-tree-visitor.h"
#include "parse-tree.h"
#include "unparse.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
#include <ostream>
#include <sstream>
#include <string>
-//===-- lib/parser/format-specification.h -----------------------*- C++ -*-===//
+//===-- include/flang/parser/format-specification.h -------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/instrumented-parser.h ------------------------*- C++ -*-===//
+//===-- include/flang/parser/instrumented-parser.h --------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_PARSER_INSTRUMENTED_PARSER_H_
#define FORTRAN_PARSER_INSTRUMENTED_PARSER_H_
-#include "message.h"
#include "parse-state.h"
-#include "provenance.h"
#include "user-state.h"
+#include "flang/parser/message.h"
+#include "flang/parser/provenance.h"
#include <cstddef>
#include <map>
#include <ostream>
-//===-- lib/parser/message.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/parser/message.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "char-block.h"
#include "char-set.h"
#include "provenance.h"
-#include "../common/idioms.h"
-#include "../common/reference-counted.h"
-#include "../common/restorer.h"
+#include "flang/common/idioms.h"
+#include "flang/common/reference-counted.h"
+#include "flang/common/restorer.h"
#include <cstddef>
#include <cstring>
#include <forward_list>
-//===-- lib/parser/parse-state.h --------------------------------*- C++ -*-===//
+//===-- include/flang/parser/parse-state.h ----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// attempts. Must be efficient to duplicate and assign for backtracking
// and recovery during parsing!
-#include "characters.h"
-#include "message.h"
-#include "provenance.h"
#include "user-state.h"
-#include "../common/Fortran-features.h"
-#include "../common/idioms.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/message.h"
+#include "flang/parser/provenance.h"
#include <cstddef>
#include <cstring>
#include <list>
-//===-- lib/parser/parse-tree-visitor.h -------------------------*- C++ -*-===//
+//===-- include/flang/parser/parse-tree-visitor.h ---------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/parse-tree.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/parser/parse-tree.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "format-specification.h"
#include "message.h"
#include "provenance.h"
-#include "../common/Fortran.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
#include <cinttypes>
#include <list>
#include <memory>
-//===-- lib/parser/parsing.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/parser/parsing.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "message.h"
#include "parse-tree.h"
#include "provenance.h"
-#include "../common/Fortran-features.h"
+#include "flang/common/Fortran-features.h"
#include <optional>
#include <ostream>
#include <string>
-//===-- lib/parser/provenance.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/parser/provenance.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "char-buffer.h"
#include "characters.h"
#include "source.h"
-#include "../common/idioms.h"
-#include "../common/interval.h"
+#include "flang/common/idioms.h"
+#include "flang/common/interval.h"
#include <cstddef>
#include <map>
#include <memory>
-//===-- lib/parser/source.h -------------------------------------*- C++ -*-===//
+//===-- include/flang/parser/source.h ---------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/tools.h --------------------------------------*- C++ -*-===//
+//===-- include/flang/parser/tools.h ----------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/unparse.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/parser/unparse.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
-//===-- lib/parser/user-state.h ---------------------------------*- C++ -*-===//
+//===-- include/flang/parser/user-state.h -----------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// parse tree construction so as to avoid any need for representing
// state in static data.
-#include "char-block.h"
-#include "parse-tree.h"
-#include "../common/Fortran-features.h"
-#include "../common/idioms.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/parse-tree.h"
#include <cinttypes>
#include <optional>
#include <ostream>
-//===-- lib/semantics/attr.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/attr.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_SEMANTICS_ATTR_H_
#define FORTRAN_SEMANTICS_ATTR_H_
-#include "../common/enum-set.h"
-#include "../common/idioms.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/idioms.h"
#include <cinttypes>
#include <string>
-//===-- lib/semantics/expression.h ------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/expression.h --------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#define FORTRAN_SEMANTICS_EXPRESSION_H_
#include "semantics.h"
-#include "../common/Fortran.h"
-#include "../common/indirection.h"
-#include "../evaluate/characteristics.h"
-#include "../evaluate/check-expression.h"
-#include "../evaluate/expression.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/tools.h"
-#include "../evaluate/type.h"
-#include "../parser/char-block.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/indirection.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/check-expression.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
#include <map>
#include <optional>
#include <variant>
-//===-- lib/semantics/scope.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/scope.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "attr.h"
#include "symbol.h"
-#include "../common/Fortran.h"
-#include "../common/idioms.h"
-#include "../common/reference.h"
-#include "../parser/message.h"
-#include "../parser/provenance.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
+#include "flang/common/reference.h"
+#include "flang/parser/message.h"
+#include "flang/parser/provenance.h"
#include <list>
#include <map>
#include <optional>
-//===-- lib/semantics/semantics.h -------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/semantics.h ---------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#include "scope.h"
#include "symbol.h"
-#include "../common/Fortran-features.h"
-#include "../evaluate/common.h"
-#include "../evaluate/intrinsics.h"
-#include "../parser/message.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/parser/message.h"
#include <iosfwd>
#include <string>
#include <vector>
-//===-- lib/semantics/symbol.h ----------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/symbol.h ------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#define FORTRAN_SEMANTICS_SYMBOL_H_
#include "type.h"
-#include "../common/Fortran.h"
-#include "../common/enum-set.h"
-#include "../common/reference.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/reference.h"
#include <list>
#include <optional>
#include <set>
-//===-- lib/semantics/tools.h -----------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/tools.h -------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// Simple predicates and look-up functions that are best defined
// canonically for use in semantic checking.
-#include "attr.h"
-#include "expression.h"
-#include "semantics.h"
-#include "../common/Fortran.h"
-#include "../evaluate/expression.h"
-#include "../evaluate/type.h"
-#include "../evaluate/variable.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/Fortran.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/type.h"
+#include "flang/evaluate/variable.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/attr.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/semantics.h"
#include <functional>
namespace Fortran::semantics {
-//===-- lib/semantics/type.h ------------------------------------*- C++ -*-===//
+//===-- include/flang/semantics/type.h --------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_SEMANTICS_TYPE_H_
#define FORTRAN_SEMANTICS_TYPE_H_
-#include "../common/Fortran.h"
-#include "../common/idioms.h"
-#include "../evaluate/expression.h"
-#include "../parser/char-block.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/char-block.h"
#include <algorithm>
#include <iosfwd>
#include <map>
-//===-- lib/semantics/unparse-with-symbols.h --------------------*- C++ -*-===//
+//===-- include/flang/semantics/unparse-with-symbols.h ----------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
#ifndef FORTRAN_SEMANTICS_UNPARSE_WITH_SYMBOLS_H_
#define FORTRAN_SEMANTICS_UNPARSE_WITH_SYMBOLS_H_
-#include "../parser/characters.h"
+#include "flang/parser/characters.h"
#include <iosfwd>
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "Fortran-features.h"
-#include "Fortran.h"
-#include "idioms.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
namespace Fortran::common {
//
//===----------------------------------------------------------------------===//
-#include "Fortran.h"
+#include "flang/common/Fortran.h"
namespace Fortran::common {
//
//===----------------------------------------------------------------------===//
-#include "default-kinds.h"
-#include "idioms.h"
+#include "flang/common/default-kinds.h"
+#include "flang/common/idioms.h"
namespace Fortran::common {
//
//===----------------------------------------------------------------------===//
-#include "idioms.h"
+#include "flang/common/idioms.h"
#include <cstdarg>
#include <cstdio>
#include <cstdlib>
// for conversions between binary and decimal representations; it is not
// a general-purpose facility.
-#include "binary-floating-point.h"
-#include "decimal.h"
-#include "../common/bit-population-count.h"
-#include "../common/leading-zero-bit-count.h"
-#include "../common/uint128.h"
-#include "../common/unsigned-const-division.h"
+#include "flang/common/bit-population-count.h"
+#include "flang/common/leading-zero-bit-count.h"
+#include "flang/common/uint128.h"
+#include "flang/common/unsigned-const-division.h"
+#include "flang/decimal/binary-floating-point.h"
+#include "flang/decimal/decimal.h"
#include <cinttypes>
#include <limits>
#include <type_traits>
//===----------------------------------------------------------------------===//
#include "big-radix-floating-point.h"
-#include "../decimal/decimal.h"
+#include "flang/decimal/decimal.h"
namespace Fortran::decimal {
//===----------------------------------------------------------------------===//
#include "big-radix-floating-point.h"
-#include "binary-floating-point.h"
-#include "decimal.h"
-#include "../common/bit-population-count.h"
-#include "../common/leading-zero-bit-count.h"
+#include "flang/common/bit-population-count.h"
+#include "flang/common/leading-zero-bit-count.h"
+#include "flang/decimal/binary-floating-point.h"
+#include "flang/decimal/decimal.h"
#include <cinttypes>
#include <cstring>
#include <ctype.h>
//
//===----------------------------------------------------------------------===//
-#include "call.h"
-#include "characteristics.h"
-#include "expression.h"
-#include "tools.h"
-#include "../common/idioms.h"
-#include "../semantics/symbol.h"
+#include "flang/evaluate/call.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/tools.h"
+#include "flang/semantics/symbol.h"
namespace Fortran::evaluate {
#ifndef FORTRAN_EVALUATE_CHARACTER_H_
#define FORTRAN_EVALUATE_CHARACTER_H_
-#include "type.h"
+#include "flang/evaluate/type.h"
#include <string>
// Provides implementations of intrinsic functions operating on character
//
//===----------------------------------------------------------------------===//
-#include "characteristics.h"
-#include "check-expression.h"
-#include "fold.h"
-#include "intrinsics.h"
-#include "tools.h"
-#include "type.h"
-#include "../common/indirection.h"
-#include "../parser/message.h"
-#include "../semantics/scope.h"
-#include "../semantics/symbol.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/common/indirection.h"
+#include "flang/evaluate/check-expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/symbol.h"
#include <initializer_list>
#include <ostream>
//
//===----------------------------------------------------------------------===//
-#include "check-expression.h"
-#include "traverse.h"
-#include "type.h"
-#include "../semantics/symbol.h"
-#include "../semantics/tools.h"
+#include "flang/evaluate/check-expression.h"
+#include "flang/evaluate/traverse.h"
+#include "flang/evaluate/type.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
namespace Fortran::evaluate {
//
//===----------------------------------------------------------------------===//
-#include "common.h"
-#include "../common/idioms.h"
+#include "flang/evaluate/common.h"
+#include "flang/common/idioms.h"
using namespace Fortran::parser::literals;
//
//===----------------------------------------------------------------------===//
-#include "complex.h"
+#include "flang/evaluate/complex.h"
namespace Fortran::evaluate::value {
//
//===----------------------------------------------------------------------===//
-#include "constant.h"
-#include "expression.h"
-#include "shape.h"
-#include "type.h"
+#include "flang/evaluate/constant.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/shape.h"
+#include "flang/evaluate/type.h"
#include <string>
namespace Fortran::evaluate {
//
//===----------------------------------------------------------------------===//
-#include "expression.h"
-#include "common.h"
+#include "flang/evaluate/expression.h"
#include "int-power.h"
-#include "tools.h"
-#include "variable.h"
-#include "../common/idioms.h"
-#include "../parser/message.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/variable.h"
+#include "flang/parser/message.h"
#include <string>
#include <type_traits>
#define FORTRAN_EVALUATE_FOLD_IMPLEMENTATION_H_
#include "character.h"
-#include "characteristics.h"
-#include "common.h"
-#include "constant.h"
-#include "expression.h"
-#include "fold.h"
-#include "formatting.h"
#include "host.h"
#include "int-power.h"
#include "intrinsics-library-templates.h"
-#include "shape.h"
-#include "tools.h"
-#include "traverse.h"
-#include "type.h"
-#include "../common/indirection.h"
-#include "../common/template.h"
-#include "../common/unwrap.h"
-#include "../parser/message.h"
-#include "../semantics/scope.h"
-#include "../semantics/symbol.h"
-#include "../semantics/tools.h"
+#include "flang/common/indirection.h"
+#include "flang/common/template.h"
+#include "flang/common/unwrap.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/constant.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/formatting.h"
+#include "flang/evaluate/shape.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/traverse.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <algorithm>
#include <cmath>
#include <complex>
//
//===----------------------------------------------------------------------===//
-#include "check-expression.h"
#include "fold-implementation.h"
+#include "flang/evaluate/check-expression.h"
namespace Fortran::evaluate {
//
//===----------------------------------------------------------------------===//
-#include "fold.h"
+#include "flang/evaluate/fold.h"
#include "fold-implementation.h"
namespace Fortran::evaluate {
//
//===----------------------------------------------------------------------===//
-#include "formatting.h"
-#include "call.h"
-#include "constant.h"
-#include "expression.h"
-#include "fold.h"
-#include "tools.h"
-#include "../parser/characters.h"
-#include "../semantics/symbol.h"
+#include "flang/evaluate/formatting.h"
+#include "flang/evaluate/call.h"
+#include "flang/evaluate/constant.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/characters.h"
+#include "flang/semantics/symbol.h"
#include <sstream>
namespace Fortran::evaluate {
#include "host.h"
-#include "../common/idioms.h"
+#include "flang/common/idioms.h"
#include <cerrno>
#include <cfenv>
// hardware type maps to Fortran intrinsic type T. Then HostType<T> can be used
// to safely refer to this hardware type.
-#include "type.h"
+#include "flang/evaluate/type.h"
#include <cfenv>
#include <complex>
#include <cstdint>
// Computes an integer power of a real or complex value.
-#include "common.h"
+#include "flang/evaluate/common.h"
namespace Fortran::evaluate {
//
//===----------------------------------------------------------------------===//
-#include "integer.h"
+#include "flang/evaluate/integer.h"
namespace Fortran::evaluate::value {
// which version should be instantiated in a generic way.
#include "host.h"
-#include "intrinsics-library.h"
-#include "type.h"
-#include "../common/template.h"
+#include "flang/common/template.h"
+#include "flang/evaluate/intrinsics-library.h"
+#include "flang/evaluate/type.h"
#include <tuple>
#include <type_traits>
//
//===----------------------------------------------------------------------===//
-#include "intrinsics.h"
-#include "common.h"
-#include "expression.h"
-#include "fold.h"
-#include "shape.h"
-#include "tools.h"
-#include "type.h"
-#include "../common/Fortran.h"
-#include "../common/enum-set.h"
-#include "../common/idioms.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/shape.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
#include <algorithm>
#include <map>
#include <ostream>
//
//===----------------------------------------------------------------------===//
-#include "logical.h"
+#include "flang/evaluate/logical.h"
namespace Fortran::evaluate::value {
//
//===----------------------------------------------------------------------===//
-#include "real.h"
+#include "flang/evaluate/real.h"
#include "int-power.h"
-#include "../common/idioms.h"
-#include "../decimal/decimal.h"
-#include "../parser/characters.h"
+#include "flang/common/idioms.h"
+#include "flang/decimal/decimal.h"
+#include "flang/parser/characters.h"
#include <limits>
namespace Fortran::evaluate::value {
//
//===----------------------------------------------------------------------===//
-#include "shape.h"
-#include "characteristics.h"
-#include "fold.h"
-#include "intrinsics.h"
-#include "tools.h"
-#include "type.h"
-#include "../common/idioms.h"
-#include "../common/template.h"
-#include "../parser/message.h"
-#include "../semantics/symbol.h"
+#include "flang/evaluate/shape.h"
+#include "flang/common/idioms.h"
+#include "flang/common/template.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/symbol.h"
#include <functional>
using namespace std::placeholders; // _1, _2, &c. for std::bind()
//
//===----------------------------------------------------------------------===//
-#include "static-data.h"
-#include "../parser/characters.h"
+#include "flang/evaluate/static-data.h"
+#include "flang/parser/characters.h"
namespace Fortran::evaluate {
//
//===----------------------------------------------------------------------===//
-#include "tools.h"
-#include "characteristics.h"
-#include "traverse.h"
-#include "../common/idioms.h"
-#include "../parser/message.h"
+#include "flang/evaluate/tools.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/traverse.h"
+#include "flang/parser/message.h"
#include <algorithm>
#include <variant>
//
//===----------------------------------------------------------------------===//
-#include "type.h"
-#include "expression.h"
-#include "fold.h"
-#include "../common/idioms.h"
-#include "../common/template.h"
-#include "../parser/characters.h"
-#include "../semantics/scope.h"
-#include "../semantics/symbol.h"
-#include "../semantics/tools.h"
-#include "../semantics/type.h"
+#include "flang/evaluate/type.h"
+#include "flang/common/idioms.h"
+#include "flang/common/template.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/parser/characters.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
+#include "flang/semantics/type.h"
#include <algorithm>
#include <optional>
#include <sstream>
//
//===----------------------------------------------------------------------===//
-#include "variable.h"
-#include "fold.h"
-#include "tools.h"
-#include "../common/idioms.h"
-#include "../parser/char-block.h"
-#include "../parser/characters.h"
-#include "../parser/message.h"
-#include "../semantics/symbol.h"
+#include "flang/evaluate/variable.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/symbol.h"
#include <ostream>
#include <type_traits>
#include "basic-parsers.h"
#include "expr-parsers.h"
#include "misc-parsers.h"
-#include "parse-tree.h"
#include "stmt-parser.h"
#include "token-parsers.h"
#include "type-parser-implementation.h"
-#include "user-state.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/user-state.h"
namespace Fortran::parser {
// This header defines the fundamental parser class templates and helper
// template functions. See parser-combinators.txt for documentation.
-#include "char-block.h"
-#include "message.h"
-#include "parse-state.h"
-#include "provenance.h"
-#include "user-state.h"
-#include "../common/Fortran-features.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-state.h"
+#include "flang/parser/provenance.h"
+#include "flang/parser/user-state.h"
#include <cstring>
#include <functional>
#include <list>
//
//----------------------------------------------------------------------------//
-#include "char-block.h"
+#include "flang/parser/char-block.h"
#include <ostream>
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "char-buffer.h"
-#include "../common/idioms.h"
+#include "flang/parser/char-buffer.h"
+#include "flang/common/idioms.h"
#include <algorithm>
#include <cstddef>
#include <cstring>
//
//===----------------------------------------------------------------------===//
-#include "char-set.h"
+#include "flang/parser/char-set.h"
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "characters.h"
-#include "../common/idioms.h"
+#include "flang/parser/characters.h"
+#include "flang/common/idioms.h"
#include <algorithm>
#include <cstddef>
#include <optional>
//===----------------------------------------------------------------------===//
#include "debug-parser.h"
-#include "user-state.h"
+#include "flang/parser/user-state.h"
#include <ostream>
#include <string>
// flow of the parsers. Not to be used in production.
#include "basic-parsers.h"
-#include "parse-state.h"
+#include "flang/parser/parse-state.h"
#include <cstddef>
#include <optional>
// Per-type parsers for executable statements
#include "basic-parsers.h"
-#include "characters.h"
#include "debug-parser.h"
#include "expr-parsers.h"
#include "misc-parsers.h"
-#include "parse-tree.h"
#include "stmt-parser.h"
#include "token-parsers.h"
#include "type-parser-implementation.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/parse-tree.h"
namespace Fortran::parser {
#include "expr-parsers.h"
#include "basic-parsers.h"
-#include "characters.h"
#include "debug-parser.h"
#include "misc-parsers.h"
-#include "parse-tree.h"
#include "stmt-parser.h"
#include "token-parsers.h"
#include "type-parser-implementation.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/parse-tree.h"
namespace Fortran::parser {
#define FORTRAN_PARSER_EXPR_PARSERS_H_
#include "basic-parsers.h"
-#include "parse-tree.h"
#include "token-parsers.h"
#include "type-parsers.h"
+#include "flang/parser/parse-tree.h"
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "instrumented-parser.h"
-#include "message.h"
-#include "provenance.h"
+#include "flang/parser/instrumented-parser.h"
+#include "flang/parser/message.h"
+#include "flang/parser/provenance.h"
#include <map>
#include <ostream>
// Per-type parsers for I/O statements and FORMAT
#include "basic-parsers.h"
-#include "characters.h"
#include "debug-parser.h"
#include "expr-parsers.h"
#include "misc-parsers.h"
-#include "parse-tree.h"
#include "stmt-parser.h"
#include "token-parsers.h"
#include "type-parser-implementation.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/parse-tree.h"
namespace Fortran::parser {
// R1201 io-unit -> file-unit-number | * | internal-file-variable
//
//===----------------------------------------------------------------------===//
-#include "message.h"
-#include "char-set.h"
-#include "../common/idioms.h"
+#include "flang/parser/message.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/char-set.h"
#include <algorithm>
#include <cstdarg>
#include <cstddef>
#define FORTRAN_PARSER_MISC_PARSERS_H_
#include "basic-parsers.h"
-#include "message.h"
-#include "parse-tree.h"
#include "token-parsers.h"
#include "type-parsers.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
namespace Fortran::parser {
#include "basic-parsers.h"
#include "expr-parsers.h"
#include "misc-parsers.h"
-#include "parse-tree.h"
#include "stmt-parser.h"
#include "token-parsers.h"
#include "type-parser-implementation.h"
+#include "flang/parser/parse-tree.h"
// OpenMP Directives and Clauses
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "parse-tree.h"
-#include "user-state.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/parser/user-state.h"
#include <algorithm>
// So "delete Expr;" calls an external destructor for its typedExpr.
//
//===----------------------------------------------------------------------===//
-#include "parsing.h"
-#include "message.h"
+#include "flang/parser/parsing.h"
#include "preprocessor.h"
#include "prescan.h"
-#include "provenance.h"
-#include "source.h"
#include "type-parsers.h"
+#include "flang/parser/message.h"
+#include "flang/parser/provenance.h"
+#include "flang/parser/source.h"
#include <sstream>
namespace Fortran::parser {
//===----------------------------------------------------------------------===//
#include "preprocessor.h"
-#include "characters.h"
-#include "message.h"
#include "prescan.h"
-#include "../common/idioms.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/message.h"
#include <algorithm>
#include <cinttypes>
#include <cstddef>
// performed, so that special compiler command options &/or source file name
// extensions for preprocessing will not be necessary.
-#include "char-block.h"
-#include "provenance.h"
#include "token-sequence.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/provenance.h"
#include <cstddef>
#include <list>
#include <stack>
//===----------------------------------------------------------------------===//
#include "prescan.h"
-#include "characters.h"
-#include "message.h"
#include "preprocessor.h"
-#include "source.h"
#include "token-sequence.h"
-#include "../common/idioms.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/message.h"
+#include "flang/parser/source.h"
#include <cstddef>
#include <cstring>
#include <sstream>
// fixed form character literals on truncated card images, file
// inclusion, and driving the Fortran source preprocessor.
-#include "characters.h"
-#include "message.h"
-#include "provenance.h"
#include "token-sequence.h"
-#include "../common/Fortran-features.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/message.h"
+#include "flang/parser/provenance.h"
#include <bitset>
#include <optional>
#include <string>
// Per-type parsers for program units
#include "basic-parsers.h"
-#include "characters.h"
#include "debug-parser.h"
#include "expr-parsers.h"
#include "misc-parsers.h"
-#include "parse-tree.h"
#include "stmt-parser.h"
#include "token-parsers.h"
#include "type-parser-implementation.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/parse-tree.h"
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "provenance.h"
-#include "../common/idioms.h"
+#include "flang/parser/provenance.h"
+#include "flang/common/idioms.h"
#include <algorithm>
#include <utility>
//
//===----------------------------------------------------------------------===//
-#include "source.h"
-#include "char-buffer.h"
-#include "../common/idioms.h"
+#include "flang/parser/source.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/char-buffer.h"
#include <algorithm>
#include <cerrno>
#include <cstddef>
// the prescanned character stream and recognize context-sensitive tokens.
#include "basic-parsers.h"
-#include "char-set.h"
-#include "characters.h"
-#include "instrumented-parser.h"
-#include "provenance.h"
#include "type-parsers.h"
-#include "../common/idioms.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/char-set.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/instrumented-parser.h"
+#include "flang/parser/provenance.h"
#include <cctype>
#include <cstddef>
#include <cstring>
//===----------------------------------------------------------------------===//
#include "token-sequence.h"
-#include "characters.h"
+#include "flang/parser/characters.h"
namespace Fortran::parser {
// and a partitioning thereof into preprocessing tokens, along with their
// associated provenances.
-#include "char-block.h"
-#include "provenance.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/provenance.h"
#include <cstddef>
#include <cstring>
#include <ostream>
//
//===----------------------------------------------------------------------===//
-#include "tools.h"
+#include "flang/parser/tools.h"
namespace Fortran::parser {
#ifndef FORTRAN_PARSER_TYPE_PARSERS_H_
#define FORTRAN_PARSER_TYPE_PARSERS_H_
-#include "instrumented-parser.h"
-#include "parse-tree.h"
+#include "flang/parser/instrumented-parser.h"
+#include "flang/parser/parse-tree.h"
#include <optional>
namespace Fortran::parser {
// Generates Fortran from the content of a parse tree, using the
// traversal templates in parse-tree-visitor.h.
-#include "unparse.h"
-#include "characters.h"
-#include "parse-tree-visitor.h"
-#include "parse-tree.h"
-#include "../common/Fortran.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
+#include "flang/parser/unparse.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
#include <algorithm>
#include <cinttypes>
#include <cstddef>
//
//===----------------------------------------------------------------------===//
-#include "user-state.h"
-#include "parse-state.h"
+#include "flang/parser/user-state.h"
#include "stmt-parser.h"
#include "type-parsers.h"
+#include "flang/parser/parse-state.h"
#include <optional>
namespace Fortran::parser {
//===----------------------------------------------------------------------===//
#include "assignment.h"
-#include "expression.h"
#include "pointer-assignment.h"
-#include "symbol.h"
-#include "tools.h"
-#include "../common/idioms.h"
-#include "../common/restorer.h"
-#include "../evaluate/expression.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/idioms.h"
+#include "flang/common/restorer.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <optional>
#include <set>
#include <string>
#ifndef FORTRAN_SEMANTICS_ASSIGNMENT_H_
#define FORTRAN_SEMANTICS_ASSIGNMENT_H_
-#include "semantics.h"
-#include "tools.h"
-#include "../common/indirection.h"
-#include "../evaluate/expression.h"
+#include "flang/common/indirection.h"
+#include "flang/evaluate/expression.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/tools.h"
#include <string>
namespace Fortran::parser {
//
//===----------------------------------------------------------------------===//
-#include "attr.h"
-#include "../common/idioms.h"
+#include "flang/semantics/attr.h"
+#include "flang/common/idioms.h"
#include <ostream>
#include <stddef.h>
//===----------------------------------------------------------------------===//
#include "canonicalize-do.h"
-#include "../parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree-visitor.h"
namespace Fortran::parser {
//===----------------------------------------------------------------------===//
#include "canonicalize-omp.h"
-#include "../parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree-visitor.h"
// After Loop Canonicalization, rewrite OpenMP parse tree to make OpenMP
// Constructs more structured which provide explicit scopes for later
#include "check-allocate.h"
#include "assignment.h"
-#include "attr.h"
-#include "expression.h"
-#include "tools.h"
-#include "type.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/type.h"
-#include "../parser/parse-tree.h"
-#include "../parser/tools.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/attr.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/tools.h"
+#include "flang/semantics/type.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_ALLOCATE_H_
#define FORTRAN_SEMANTICS_CHECK_ALLOCATE_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct AllocateStmt;
//===----------------------------------------------------------------------===//
#include "check-arithmeticif.h"
-#include "tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_ARITHMETICIF_STMT_H_
#define FORTRAN_SEMANTICS_CHECK_ARITHMETICIF_STMT_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct ArithmeticIfStmt;
#include "check-call.h"
#include "pointer-assignment.h"
-#include "scope.h"
-#include "tools.h"
-#include "../evaluate/characteristics.h"
-#include "../evaluate/check-expression.h"
-#include "../evaluate/shape.h"
-#include "../evaluate/tools.h"
-#include "../parser/characters.h"
-#include "../parser/message.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/check-expression.h"
+#include "flang/evaluate/shape.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/tools.h"
#include <map>
#include <string>
#ifndef FORTRAN_SEMANTICS_CHECK_CALL_H_
#define FORTRAN_SEMANTICS_CHECK_CALL_H_
-#include "../evaluate/call.h"
+#include "flang/evaluate/call.h"
namespace Fortran::parser {
class Messages;
//===----------------------------------------------------------------------===//
#include "check-coarray.h"
-#include "expression.h"
-#include "tools.h"
-#include "../common/indirection.h"
-#include "../evaluate/expression.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
-#include "../parser/tools.h"
+#include "flang/common/indirection.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_COARRAY_H_
#define FORTRAN_SEMANTICS_CHECK_COARRAY_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
#include <list>
namespace Fortran::parser {
//===----------------------------------------------------------------------===//
#include "check-deallocate.h"
-#include "expression.h"
-#include "tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_DEALLOCATE_H_
#define FORTRAN_SEMANTICS_CHECK_DEALLOCATE_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct DeallocateStmt;
// Static declaration checking
#include "check-declarations.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "tools.h"
-#include "type.h"
-#include "../evaluate/check-expression.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/tools.h"
+#include "flang/evaluate/check-expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
+#include "flang/semantics/type.h"
#include <algorithm>
namespace Fortran::semantics {
//===----------------------------------------------------------------------===//
#include "check-do.h"
-#include "attr.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "tools.h"
-#include "type.h"
-#include "../common/template.h"
-#include "../evaluate/call.h"
-#include "../evaluate/expression.h"
-#include "../evaluate/tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/tools.h"
+#include "flang/common/template.h"
+#include "flang/evaluate/call.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/attr.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
+#include "flang/semantics/type.h"
namespace Fortran::evaluate {
using ActualArgumentRef = common::Reference<const ActualArgument>;
#ifndef FORTRAN_SEMANTICS_CHECK_DO_H_
#define FORTRAN_SEMANTICS_CHECK_DO_H_
-#include "semantics.h"
-#include "../common/idioms.h"
+#include "flang/common/idioms.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct AssignmentStmt;
//===----------------------------------------------------------------------===//
#include "check-if-stmt.h"
-#include "tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_IF_STMT_H_
#define FORTRAN_SEMANTICS_CHECK_IF_STMT_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct IfStmt;
//===----------------------------------------------------------------------===//
#include "check-io.h"
-#include "expression.h"
-#include "tools.h"
-#include "../common/format.h"
-#include "../parser/tools.h"
+#include "flang/common/format.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/tools.h"
#include <unordered_map>
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_IO_H_
#define FORTRAN_SEMANTICS_CHECK_IO_H_
-#include "semantics.h"
-#include "tools.h"
-#include "../common/enum-set.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/enum-set.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#include "check-nullify.h"
#include "assignment.h"
-#include "expression.h"
-#include "tools.h"
-#include "../evaluate/expression.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_NULLIFY_H_
#define FORTRAN_SEMANTICS_CHECK_NULLIFY_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct NullifyStmt;
//===----------------------------------------------------------------------===//
#include "check-omp-structure.h"
-#include "tools.h"
-#include "../parser/parse-tree.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/tools.h"
#include <unordered_map>
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_OMP_STRUCTURE_H_
#define FORTRAN_SEMANTICS_CHECK_OMP_STRUCTURE_H_
-#include "semantics.h"
-#include "../common/enum-set.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/enum-set.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::semantics {
//===----------------------------------------------------------------------===//
#include "check-purity.h"
-#include "tools.h"
-#include "../parser/parse-tree.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
void PurityChecker::Enter(const parser::ExecutableConstruct &exec) {
#ifndef FORTRAN_SEMANTICS_CHECK_PURITY_H_
#define FORTRAN_SEMANTICS_CHECK_PURITY_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
#include <list>
namespace Fortran::parser {
struct ExecutableConstruct;
//===----------------------------------------------------------------------===//
#include "check-return.h"
-#include "semantics.h"
-#include "tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/tools.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_RETURN_H_
#define FORTRAN_SEMANTICS_CHECK_RETURN_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct ReturnStmt;
//===----------------------------------------------------------------------===//
#include "check-stop.h"
-#include "semantics.h"
-#include "tools.h"
-#include "../common/Fortran.h"
-#include "../evaluate/expression.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/Fortran.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/tools.h"
#include <optional>
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_CHECK_STOP_H_
#define FORTRAN_SEMANTICS_CHECK_STOP_H_
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
namespace Fortran::parser {
struct StopStmt;
//
//===----------------------------------------------------------------------===//
-#include "expression.h"
+#include "flang/semantics/expression.h"
#include "check-call.h"
#include "pointer-assignment.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "tools.h"
-#include "../common/idioms.h"
-#include "../evaluate/common.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/tools.h"
-#include "../parser/characters.h"
-#include "../parser/dump-parse-tree.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/dump-parse-tree.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <algorithm>
#include <functional>
#include <optional>
#include "mod-file.h"
#include "resolve-names.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "tools.h"
-#include "../evaluate/tools.h"
-#include "../parser/message.h"
-#include "../parser/parsing.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parsing.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <algorithm>
#include <cerrno>
#include <fstream>
#ifndef FORTRAN_SEMANTICS_MOD_FILE_H_
#define FORTRAN_SEMANTICS_MOD_FILE_H_
-#include "attr.h"
+#include "flang/semantics/attr.h"
#include <sstream>
#include <string>
//===----------------------------------------------------------------------===//
#include "pointer-assignment.h"
-#include "expression.h"
-#include "symbol.h"
-#include "tools.h"
-#include "../common/idioms.h"
-#include "../common/restorer.h"
-#include "../evaluate/characteristics.h"
-#include "../evaluate/expression.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/tools.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/idioms.h"
+#include "flang/common/restorer.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <optional>
#include <set>
#include <string>
#ifndef FORTRAN_SEMANTICS_POINTER_ASSIGNMENT_H_
#define FORTRAN_SEMANTICS_POINTER_ASSIGNMENT_H_
-#include "type.h"
-#include "../evaluate/expression.h"
-#include "../parser/char-block.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/char-block.h"
+#include "flang/semantics/type.h"
#include <string>
namespace Fortran::evaluate::characteristics {
//===----------------------------------------------------------------------===//
#include "program-tree.h"
-#include "scope.h"
-#include "../common/idioms.h"
-#include "../parser/char-block.h"
+#include "flang/common/idioms.h"
+#include "flang/parser/char-block.h"
+#include "flang/semantics/scope.h"
namespace Fortran::semantics {
#ifndef FORTRAN_SEMANTICS_PROGRAM_TREE_H_
#define FORTRAN_SEMANTICS_PROGRAM_TREE_H_
-#include "symbol.h"
-#include "../parser/parse-tree.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/symbol.h"
#include <variant>
// A ProgramTree represents a tree of program units and their contained
//===----------------------------------------------------------------------===//
#include "resolve-labels.h"
-#include "semantics.h"
-#include "../common/enum-set.h"
-#include "../common/template.h"
-#include "../parser/parse-tree-visitor.h"
+#include "flang/common/enum-set.h"
+#include "flang/common/template.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/semantics/semantics.h"
#include <cctype>
#include <cstdarg>
#include <type_traits>
//===----------------------------------------------------------------------===//
#include "resolve-names-utils.h"
-#include "expression.h"
-#include "semantics.h"
-#include "tools.h"
-#include "../common/Fortran-features.h"
-#include "../common/idioms.h"
-#include "../common/indirection.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/tools.h"
-#include "../evaluate/type.h"
-#include "../parser/char-block.h"
-#include "../parser/parse-tree.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/idioms.h"
+#include "flang/common/indirection.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/char-block.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/tools.h"
#include <initializer_list>
#include <ostream>
#include <variant>
// Utility functions and class for use in resolve-names.cc.
-#include "scope.h"
-#include "symbol.h"
-#include "type.h"
-#include "../parser/message.h"
+#include "flang/parser/message.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/type.h"
#include <forward_list>
namespace Fortran::parser {
#include "resolve-names.h"
#include "assignment.h"
-#include "attr.h"
-#include "expression.h"
#include "mod-file.h"
#include "program-tree.h"
#include "resolve-names-utils.h"
#include "rewrite-parse-tree.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "tools.h"
-#include "type.h"
-#include "../common/Fortran.h"
-#include "../common/default-kinds.h"
-#include "../common/indirection.h"
-#include "../common/restorer.h"
-#include "../evaluate/characteristics.h"
-#include "../evaluate/common.h"
-#include "../evaluate/fold.h"
-#include "../evaluate/intrinsics.h"
-#include "../evaluate/tools.h"
-#include "../evaluate/type.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
-#include "../parser/tools.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/default-kinds.h"
+#include "flang/common/indirection.h"
+#include "flang/common/restorer.h"
+#include "flang/evaluate/characteristics.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/evaluate/tools.h"
+#include "flang/evaluate/type.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/attr.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
+#include "flang/semantics/type.h"
#include <list>
#include <map>
#include <ostream>
//===----------------------------------------------------------------------===//
#include "rewrite-parse-tree.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "tools.h"
-#include "../common/indirection.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
-#include "../parser/tools.h"
+#include "flang/common/indirection.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <list>
namespace Fortran::semantics {
//
//===----------------------------------------------------------------------===//
-#include "scope.h"
-#include "symbol.h"
-#include "type.h"
-#include "../parser/characters.h"
+#include "flang/semantics/scope.h"
+#include "flang/parser/characters.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/type.h"
#include <algorithm>
#include <memory>
#include <sstream>
//
//===----------------------------------------------------------------------===//
-#include "semantics.h"
+#include "flang/semantics/semantics.h"
#include "assignment.h"
#include "canonicalize-do.h"
#include "canonicalize-omp.h"
#include "check-purity.h"
#include "check-return.h"
#include "check-stop.h"
-#include "expression.h"
#include "mod-file.h"
#include "resolve-labels.h"
#include "resolve-names.h"
#include "rewrite-parse-tree.h"
-#include "scope.h"
-#include "symbol.h"
-#include "../common/default-kinds.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/tools.h"
+#include "flang/common/default-kinds.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/tools.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/symbol.h"
namespace Fortran::semantics {
//
//===----------------------------------------------------------------------===//
-#include "symbol.h"
-#include "scope.h"
-#include "semantics.h"
-#include "tools.h"
-#include "../common/idioms.h"
-#include "../evaluate/expression.h"
+#include "flang/semantics/symbol.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/expression.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/tools.h"
#include <ostream>
#include <string>
//
//===----------------------------------------------------------------------===//
-#include "tools.h"
-#include "scope.h"
-#include "semantics.h"
-#include "symbol.h"
-#include "type.h"
-#include "../common/Fortran.h"
-#include "../common/indirection.h"
-#include "../parser/dump-parse-tree.h"
-#include "../parser/message.h"
-#include "../parser/parse-tree.h"
-#include "../parser/tools.h"
+#include "flang/parser/tools.h"
+#include "flang/common/Fortran.h"
+#include "flang/common/indirection.h"
+#include "flang/parser/dump-parse-tree.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
+#include "flang/semantics/type.h"
#include <algorithm>
#include <set>
#include <sstream>
const auto *lhsDerived{evaluate::GetDerivedTypeSpec(lhsType)};
const auto *rhsDerived{evaluate::GetDerivedTypeSpec(rhsType)};
if (lhsDerived && rhsDerived && *lhsDerived == *rhsDerived) {
- return Tristate::Maybe; // TYPE(t) = TYPE(t) can be defined or intrinsic
+ return Tristate::Maybe; // TYPE(t) = TYPE(t) can be defined or
+ // intrinsic
} else {
return Tristate::Yes;
}
context.Say(stmtLocation, message)
.Attach(constructLocation, GetEnclosingConstructMsg());
}
-
}
//
//===----------------------------------------------------------------------===//
-#include "type.h"
-#include "scope.h"
-#include "symbol.h"
-#include "tools.h"
-#include "../evaluate/fold.h"
-#include "../parser/characters.h"
+#include "flang/semantics/type.h"
+#include "flang/evaluate/fold.h"
+#include "flang/parser/characters.h"
+#include "flang/semantics/scope.h"
+#include "flang/semantics/symbol.h"
+#include "flang/semantics/tools.h"
#include <ostream>
#include <sstream>
//
//===----------------------------------------------------------------------===//
-#include "unparse-with-symbols.h"
-#include "symbol.h"
-#include "../parser/parse-tree-visitor.h"
-#include "../parser/parse-tree.h"
-#include "../parser/unparse.h"
+#include "flang/semantics/unparse-with-symbols.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/unparse.h"
+#include "flang/semantics/symbol.h"
#include <map>
#include <ostream>
#include <set>
#define FORTRAN_RUNTIME_DERIVED_TYPE_H_
#include "type-code.h"
-#include "../include/flang/ISO_Fortran_binding.h"
+#include "flang/ISO_Fortran_binding.h"
#include <cinttypes>
#include <cstddef>
//===----------------------------------------------------------------------===//
#include "descriptor.h"
-#include "../lib/common/idioms.h"
+#include "flang/common/idioms.h"
#include <cassert>
#include <cstdlib>
#include "derived-type.h"
#include "type-code.h"
-#include "../include/flang/ISO_Fortran_binding.h"
+#include "flang/ISO_Fortran_binding.h"
#include <cassert>
#include <cinttypes>
#include <cstddef>
#include "format.h"
#include "io-stmt.h"
-#include "../lib/common/format.h"
-#include "../lib/decimal/decimal.h"
+#include "flang/common/format.h"
+#include "flang/decimal/decimal.h"
#include <limits>
namespace Fortran::runtime::io {
#define FORTRAN_RUNTIME_FORMAT_H_
#include "terminator.h"
-#include "../lib/common/Fortran.h"
+#include "flang/common/Fortran.h"
#include <cinttypes>
#include <optional>
//===----------------------------------------------------------------------===//
#include "transformational.h"
-#include "../lib/common/idioms.h"
+#include "flang/common/idioms.h"
+#include "flang/evaluate/integer.h"
#include <algorithm>
#include <bitset>
#include <cinttypes>
#ifndef FORTRAN_RUNTIME_TYPE_CODE_H_
#define FORTRAN_RUNTIME_TYPE_CODE_H_
-#include "../include/flang/ISO_Fortran_binding.h"
-#include "../lib/common/Fortran.h"
+#include "flang/ISO_Fortran_binding.h"
+#include "flang/common/Fortran.h"
namespace Fortran::runtime {
-#include "../../lib/decimal/decimal.h"
+#include "flang/decimal/decimal.h"
#include <cinttypes>
#include <cstdio>
#include <cstring>
-#include "../../lib/decimal/decimal.h"
+#include "flang/decimal/decimal.h"
#include <cinttypes>
#include <cstdio>
#include <cstring>
-#include "../../lib/common/bit-population-count.h"
+#include "flang/common/bit-population-count.h"
#include "testing.h"
using Fortran::common::BitPopulationCount;
-#include "../../lib/evaluate/expression.h"
+#include "flang/evaluate/expression.h"
#include "testing.h"
-#include "../../lib/evaluate/fold.h"
-#include "../../lib/evaluate/intrinsics.h"
-#include "../../lib/evaluate/tools.h"
-#include "../../lib/parser/message.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/message.h"
#include <cstdio>
#include <cstdlib>
#include <string>
#include "testing.h"
-#include "../../lib/evaluate/call.h"
-#include "../../lib/evaluate/expression.h"
-#include "../../lib/evaluate/fold.h"
#include "../../lib/evaluate/host.h"
#include "../../lib/evaluate/intrinsics-library-templates.h"
-#include "../../lib/evaluate/intrinsics.h"
-#include "../../lib/evaluate/tools.h"
+#include "flang/evaluate/call.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/fold.h"
+#include "flang/evaluate/intrinsics.h"
+#include "flang/evaluate/tools.h"
#include <tuple>
using namespace Fortran::evaluate;
#ifndef FORTRAN_TEST_EVALUATE_FP_TESTING_H_
#define FORTRAN_TEST_EVALUATE_FP_TESTING_H_
-#include "../../lib/evaluate/common.h"
+#include "flang/evaluate/common.h"
#include <fenv.h>
using Fortran::common::RoundingMode;
-#include "../../lib/evaluate/integer.h"
+#include "flang/evaluate/integer.h"
#include "testing.h"
#include <cstdio>
#include <string>
-#include "../../lib/evaluate/intrinsics.h"
+#include "flang/evaluate/intrinsics.h"
#include "testing.h"
-#include "../../lib/evaluate/common.h"
-#include "../../lib/evaluate/expression.h"
-#include "../../lib/evaluate/tools.h"
-#include "../../lib/parser/provenance.h"
+#include "flang/evaluate/common.h"
+#include "flang/evaluate/expression.h"
+#include "flang/evaluate/tools.h"
+#include "flang/parser/provenance.h"
#include <initializer_list>
#include <iostream>
#include <map>
-#include "../../lib/common/leading-zero-bit-count.h"
+#include "flang/common/leading-zero-bit-count.h"
#include "testing.h"
using Fortran::common::LeadingZeroBitCount;
#include "testing.h"
-#include "../../lib/evaluate/type.h"
+#include "flang/evaluate/type.h"
#include <cstdio>
template<int KIND> void testKind() {
#include "fp-testing.h"
#include "testing.h"
-#include "../../lib/evaluate/type.h"
+#include "flang/evaluate/type.h"
#include <cmath>
#include <cstdio>
#include <cstdlib>
#define AVOID_NATIVE_UINT128_T 1
-#include "../../lib/common/uint128.h"
+#include "flang/common/uint128.h"
#include "testing.h"
#include <cinttypes>
#include <iostream>
// scaffolding compiler driver that can test some semantic passes of the
// F18 compiler under development.
-#include "../../lib/common/Fortran-features.h"
-#include "../../lib/common/default-kinds.h"
-#include "../../lib/parser/characters.h"
-#include "../../lib/parser/dump-parse-tree.h"
-#include "../../lib/parser/message.h"
-#include "../../lib/parser/parse-tree-visitor.h"
-#include "../../lib/parser/parse-tree.h"
-#include "../../lib/parser/parsing.h"
-#include "../../lib/parser/provenance.h"
-#include "../../lib/parser/unparse.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/default-kinds.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/dump-parse-tree.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/parsing.h"
+#include "flang/parser/provenance.h"
+#include "flang/parser/unparse.h"
#include <cerrno>
#include <cstdio>
#include <cstring>
// Temporary Fortran front end driver main program for development scaffolding.
-#include "../../lib/common/Fortran-features.h"
-#include "../../lib/common/default-kinds.h"
-#include "../../lib/evaluate/expression.h"
-#include "../../lib/parser/characters.h"
-#include "../../lib/parser/dump-parse-tree.h"
-#include "../../lib/parser/message.h"
-#include "../../lib/parser/parse-tree-visitor.h"
-#include "../../lib/parser/parse-tree.h"
-#include "../../lib/parser/parsing.h"
-#include "../../lib/parser/provenance.h"
-#include "../../lib/parser/unparse.h"
-#include "../../lib/semantics/expression.h"
-#include "../../lib/semantics/semantics.h"
-#include "../../lib/semantics/unparse-with-symbols.h"
+#include "flang/common/Fortran-features.h"
+#include "flang/common/default-kinds.h"
+#include "flang/evaluate/expression.h"
+#include "flang/parser/characters.h"
+#include "flang/parser/dump-parse-tree.h"
+#include "flang/parser/message.h"
+#include "flang/parser/parse-tree-visitor.h"
+#include "flang/parser/parse-tree.h"
+#include "flang/parser/parsing.h"
+#include "flang/parser/provenance.h"
+#include "flang/parser/unparse.h"
+#include "flang/semantics/expression.h"
+#include "flang/semantics/semantics.h"
+#include "flang/semantics/unparse-with-symbols.h"
#include <cerrno>
#include <cstdio>
#include <cstring>
// libraries, as here, we need to stub out the dependences on the external
// destructors, which will never actually be called.
-#include "../../lib/common/indirection.h"
+#include "flang/common/indirection.h"
namespace Fortran::evaluate {
struct GenericExprWrapper {