[PATCH] D88909: [NFC][flang] Introduce new helper TODO macro for further development
Eric Schweitz via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 6 11:32:11 PDT 2020
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG0f8294072fbc: [NFC][flang] Add the header file Todo.h. This file is being upstreamed to… (authored by schweitz).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D88909/new/
https://reviews.llvm.org/D88909
Files:
flang/include/flang/Lower/Todo.h
Index: flang/include/flang/Lower/Todo.h
===================================================================
--- /dev/null
+++ flang/include/flang/Lower/Todo.h
@@ -0,0 +1,49 @@
+//===-- Lower/Todo.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.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// Coding style: https://mlir.llvm.org/getting_started/DeveloperGuide/
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef FORTRAN_LOWER_TODO_H
+#define FORTRAN_LOWER_TODO_H
+
+#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Support/raw_ostream.h"
+#include <cstdlib>
+
+// This is throw-away code used to mark areas of the code that have not yet been
+// developed.
+
+#undef TODO
+
+#ifdef NDEBUG
+
+// In a release build, just give a message and exit.
+#define TODO(ToDoMsg) \
+ do { \
+ llvm::errs() << __FILE__ << ':' << __LINE__ << ": not yet implemented " \
+ << ToDoMsg << '\n'; \
+ std::exit(1); \
+ } while (false)
+
+#else
+
+#undef TODOQUOTE
+#define TODOQUOTE(X) #X
+
+// In a developer build, print a message and give a backtrace.
+#define TODO(ToDoMsg) \
+ do { \
+ llvm::report_fatal_error( \
+ __FILE__ ":" TODOQUOTE(__LINE__) ": not yet implemented " ToDoMsg); \
+ } while (false)
+
+#endif
+
+#endif // FORTRAN_LOWER_TODO_H
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88909.296507.patch
Type: text/x-patch
Size: 2005 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201006/8af77250/attachment.bin>
More information about the llvm-commits
mailing list