summaryrefslogtreecommitdiff
path: root/tiger-compiler/src/overload/tasks.hh
diff options
context:
space:
mode:
Diffstat (limited to 'tiger-compiler/src/overload/tasks.hh')
-rw-r--r--tiger-compiler/src/overload/tasks.hh29
1 files changed, 29 insertions, 0 deletions
diff --git a/tiger-compiler/src/overload/tasks.hh b/tiger-compiler/src/overload/tasks.hh
new file mode 100644
index 0000000..31edad1
--- /dev/null
+++ b/tiger-compiler/src/overload/tasks.hh
@@ -0,0 +1,29 @@
+/**
+ ** \file overload/tasks.hh
+ ** \brief Overload module tasks.
+ */
+
+#pragma once
+
+#include <overload/binder.hh>
+#include <task/libtask.hh>
+
+namespace overload::tasks
+{
+ TASK_GROUP("4.5 Type checking with overloading");
+
+ /// Compute bindings, allowing function overloading.
+ TASK_DECLARE("overfun-bindings-compute",
+ "bind the identifiers, "
+ "allowing function overloading",
+ overfun_bindings_compute,
+ "parse");
+
+ /// Check for type violation, allowing function overloading.
+ TASK_DECLARE("O|overfun-types-compute",
+ "check for type violations, "
+ "allowing function overloading",
+ overfun_types_compute,
+ "overfun-bindings-compute");
+
+} // namespace overload::tasks