diff --git a/flang/lib/Lower/CallInterface.cpp b/flang/lib/Lower/CallInterface.cpp --- a/flang/lib/Lower/CallInterface.cpp +++ b/flang/lib/Lower/CallInterface.cpp @@ -880,8 +880,11 @@ addMLIRAttr(fir::getContiguousAttrName()); if (obj.attrs.test(Attrs::Value)) isValueAttr = true; // TODO: do we want an mlir::Attribute as well? - if (obj.attrs.test(Attrs::Volatile)) - TODO(loc, "VOLATILE in procedure interface"); + if (obj.attrs.test(Attrs::Volatile)) { + mlir::emitWarning(loc, + "VOLATILE keyword is not yet supported so this may " + "lead to undefined behavior."); + } if (obj.attrs.test(Attrs::Target)) addMLIRAttr(fir::getTargetAttrName());