1010//
1111// ===----------------------------------------------------------------------===//
1212
13+ #include " flang/Lower/IO.h"
1314#include " ConvertVariable.h"
1415#include " StatementContext.h"
1516#include " flang/Lower/Allocatable.h"
1617#include " flang/Lower/Bridge.h"
1718#include " flang/Lower/ConvertExpr.h"
18- #include " flang/Lower/IO.h"
1919#include " flang/Lower/PFTBuilder.h"
2020#include " flang/Lower/Runtime.h"
2121#include " flang/Lower/Support/Utils.h"
@@ -946,6 +946,7 @@ mlir::Value genIOOption<Fortran::parser::IoControlSpec::Pos>(
946946 const Fortran::parser::IoControlSpec::Pos &spec) {
947947 return genIntIOOption<mkIOKey (SetPos)>(converter, loc, cookie, stmtCtx, spec);
948948}
949+
949950template <>
950951mlir::Value genIOOption<Fortran::parser::IoControlSpec::Rec>(
951952 Fortran::lower::AbstractConverter &converter, mlir::Location loc,
@@ -954,6 +955,15 @@ mlir::Value genIOOption<Fortran::parser::IoControlSpec::Rec>(
954955 return genIntIOOption<mkIOKey (SetRec)>(converter, loc, cookie, stmtCtx, spec);
955956}
956957
958+ template <>
959+ mlir::Value genIOOption<Fortran::parser::IoControlSpec::Size>(
960+ Fortran::lower::AbstractConverter &converter, mlir::Location loc,
961+ mlir::Value cookie, Fortran::lower::StatementContext &,
962+ const Fortran::parser::IoControlSpec::Size &) {
963+ // Runtime GetSize is not implemented yet.
964+ TODO (loc, " SIZE= specifier in a data transfer statement" );
965+ }
966+
957967// ===----------------------------------------------------------------------===//
958968// Gather IO statement condition specifier information (if any).
959969// ===----------------------------------------------------------------------===//
0 commit comments