diff --git a/libcorpus2/tagset.cpp b/libcorpus2/tagset.cpp
index 6c0e499e8f30eb56670a5040692a45dab66b6c0c..ff7f86a7913eae6c724d0ccdb851aeebf14879a9 100644
--- a/libcorpus2/tagset.cpp
+++ b/libcorpus2/tagset.cpp
@@ -280,12 +280,9 @@ Tag Tagset::make_tag(idx_t pos_idx, mask_t values, bool allow_extra) const
 
 Tag Tagset::make_ign_tag() const
 {
-#ifndef _MSC_VER
-	mask_t ign_pos_mask = get_pos_mask("ign");
-#else //no const char* to std::string::const_iterator conversion
+
 	static const std::string ign("ign");
 	mask_t ign_pos_mask = get_pos_mask(ign);
-#endif
 	assert(ign_pos_mask.any());
 	return Tag(ign_pos_mask);
 }
diff --git a/libcorpus2/tagset.h b/libcorpus2/tagset.h
index a896d3481c53341309ea52bf34a3769b4d25b6b1..12b3e8abe5359c458cb6de078b13777b14c7b4f0 100644
--- a/libcorpus2/tagset.h
+++ b/libcorpus2/tagset.h
@@ -135,11 +135,7 @@ public:
 	 */
 	void parse_tag(const char* c, bool allow_extra,
 			boost::function<void (const Tag&)> sink) const {
-#ifndef _MSC_VER
-		parse_tag(std::make_pair(c, c + strlen(c)), allow_extra, sink);
-#else // no const char* to std::string::const_iterator conversion
 		parse_tag(std::string(c), allow_extra, sink);
-#endif
 	}
 
 	/**
@@ -178,11 +174,7 @@ public:
 	 * version.
 	 */
 	std::vector<Tag> parse_tag(const char* c, bool allow_extra) const {
-#ifndef _MSC_VER
-		return parse_tag(std::make_pair(c, c + strlen(c)), allow_extra);
-#else // no const char* to std::string::const_iterator conversion
 		return parse_tag(std::string(c), allow_extra);
-#endif
 	}
 
 	/**
@@ -209,12 +201,7 @@ public:
 	 * version.
 	 */
 	Tag parse_simple_tag(const char* c, bool allow_extra) const {
-#ifndef _MSC_VER
-		return parse_simple_tag(std::make_pair(c, c + strlen(c)),
-				allow_extra);
-#else // no const char* to std::string::const_iterator conversion
 		return parse_simple_tag(std::string(c), allow_extra);	
-#endif
 	}
 
 	/**