exception: Add error for incomplete operations

Change-Id: Ic7ea2cf08df051b67b23ffdd8aafc4a7931c4e45
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/include/stdplus/exception.hpp b/include/stdplus/exception.hpp
index c06ff9f..f2d40f2 100644
--- a/include/stdplus/exception.hpp
+++ b/include/stdplus/exception.hpp
@@ -10,6 +10,12 @@
 namespace exception
 {
 
+struct Incomplete : public std::system_error
+{
+    Incomplete(const char* what);
+    Incomplete(const std::string& what);
+};
+
 struct WouldBlock : public std::system_error
 {
     WouldBlock(const char* what);
diff --git a/src/exception.cpp b/src/exception.cpp
index cd79ebc..3fe7a99 100644
--- a/src/exception.cpp
+++ b/src/exception.cpp
@@ -21,6 +21,16 @@
 namespace exception
 {
 
+Incomplete::Incomplete(const char* what) :
+    std::system_error(std::make_error_code(std::errc::illegal_byte_sequence),
+                      what)
+{}
+
+Incomplete::Incomplete(const std::string& what) :
+    std::system_error(std::make_error_code(std::errc::illegal_byte_sequence),
+                      what)
+{}
+
 WouldBlock::WouldBlock(const char* what) :
     std::system_error(std::make_error_code(std::errc::operation_would_block),
                       what)