add STD_put_time_NOT_SUPPORTED
This commit is contained in:
		
							parent
							
								
									f8fb4a464d
								
							
						
					
					
						commit
						7f10f8d28d
					
				@ -31,6 +31,7 @@
 | 
				
			|||||||
 *	- _SCL_SECURE_NO_WARNNGS, _CRT_SECURE_NO_DEPRECATE (VC)
 | 
					 *	- _SCL_SECURE_NO_WARNNGS, _CRT_SECURE_NO_DEPRECATE (VC)
 | 
				
			||||||
 *	- STD_CODECVT_NOT_SUPPORTED (VC RC, <codecvt> is a known issue on libstdc++, it works on libc++)
 | 
					 *	- STD_CODECVT_NOT_SUPPORTED (VC RC, <codecvt> is a known issue on libstdc++, it works on libc++)
 | 
				
			||||||
 *	- STD_THREAD_NOT_SUPPORTED (GCC < 4.8.1)
 | 
					 *	- STD_THREAD_NOT_SUPPORTED (GCC < 4.8.1)
 | 
				
			||||||
 | 
					 *	- STD_put_time_NOT_SUPPORTED (GCC < 5)
 | 
				
			||||||
 *	- STD_NUMERIC_CONVERSIONS_NOT_SUPPORTED  (MinGW with GCC < 4.8.1)
 | 
					 *	- STD_NUMERIC_CONVERSIONS_NOT_SUPPORTED  (MinGW with GCC < 4.8.1)
 | 
				
			||||||
 *	- STD_NUMERIC_CONVERSIONS_NOT_SUPPORTED (MinGW with GCC < 4.8.1)
 | 
					 *	- STD_NUMERIC_CONVERSIONS_NOT_SUPPORTED (MinGW with GCC < 4.8.1)
 | 
				
			||||||
 *	- STD_TO_STRING_NOT_SUPPORTED (MinGW with GCC < 4.8)
 | 
					 *	- STD_TO_STRING_NOT_SUPPORTED (MinGW with GCC < 4.8)
 | 
				
			||||||
@ -133,8 +134,13 @@
 | 
				
			|||||||
		#endif
 | 
							#endif
 | 
				
			||||||
	#endif
 | 
						#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						#if ((__GNUC__ > 5)   )
 | 
				
			||||||
 | 
						#	defie STD_put_time_NOT_SUPPORTED
 | 
				
			||||||
 | 
					    #endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    #if ((__GNUC__ > 5) || ((__GNUC__ == 5) && (__GNUC_MINOR__ >= 3 ) ) )
 | 
					    #if ((__GNUC__ > 5) || ((__GNUC__ == 5) && (__GNUC_MINOR__ >= 3 ) ) )
 | 
				
			||||||
		#undef STD_FILESYSTEM_NOT_SUPPORTED
 | 
						#	undef STD_FILESYSTEM_NOT_SUPPORTED
 | 
				
			||||||
    #endif
 | 
					    #endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	#if (__GNUC__ == 4)
 | 
						#if (__GNUC__ == 4)
 | 
				
			||||||
 | 
				
			|||||||
@ -92,6 +92,24 @@ namespace std
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef STD_put_time_NOT_SUPPORTED
 | 
				
			||||||
 | 
					namespace std
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						//Workaround for no implemenation of std::put_time in gcc < 5.
 | 
				
			||||||
 | 
						/* std unspecified return type */
 | 
				
			||||||
 | 
						//template< class CharT, class RTSTR >// let fail for CharT != char / wchar_t
 | 
				
			||||||
 | 
						//RTSTR put_time(const std::tm* tmb, const CharT* fmt);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//template<   >
 | 
				
			||||||
 | 
						std::string put_time/*<char, std::string>*/(const std::tm* tmb, const char* fmt);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//Defined in header <ctime>
 | 
				
			||||||
 | 
						//	std::size_t strftime(char* str, std::size_t count, const char* format, const std::tm* time);
 | 
				
			||||||
 | 
						//template<>
 | 
				
			||||||
 | 
						//std::wstring put_time<wchar_t, std::wstring>(const std::tm* tmb, const wchar_t* fmt);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif  // STD_put_time_NOT_SUPPORTED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace nana
 | 
					namespace nana
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// Checks whether a specified text is utf8 encoding
 | 
						/// Checks whether a specified text is utf8 encoding
 | 
				
			||||||
 | 
				
			|||||||
@ -436,6 +436,49 @@ namespace std
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//#ifdef STD_put_time_NOT_SUPPORTED
 | 
				
			||||||
 | 
					#include  <ctime>
 | 
				
			||||||
 | 
					#include  <cwchar>
 | 
				
			||||||
 | 
					namespace std
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						//Workaround for no implemenation of std::put_time in gcc < 5.
 | 
				
			||||||
 | 
						/* std unspecified return type */
 | 
				
			||||||
 | 
						//template< class CharT, class RTSTR >// let fail for CharT != char / wchar_t
 | 
				
			||||||
 | 
						//RTSTR put_time(const std::tm* tmb, const CharT* fmt);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						//template<   >
 | 
				
			||||||
 | 
						std::string put_time/*<char, std::string>*/(const std::tm* tmb, const char* fmt)
 | 
				
			||||||
 | 
						{  
 | 
				
			||||||
 | 
							unsigned sz = 200;
 | 
				
			||||||
 | 
							std::string str(sz, '\0'); 
 | 
				
			||||||
 | 
							sz = std::strftime(&str[0], str.size() - 1, fmt, tmb);  
 | 
				
			||||||
 | 
							str.resize(sz);
 | 
				
			||||||
 | 
							return str;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						//Defined in header <ctime>
 | 
				
			||||||
 | 
						//	std::size_t strftime(char* str, std::size_t count, const char* format, const std::tm* time);
 | 
				
			||||||
 | 
						//template<>
 | 
				
			||||||
 | 
						//std::wstring put_time<wchar_t, std::wstring>(const std::tm* tmb, const wchar_t* fmt)
 | 
				
			||||||
 | 
						//{
 | 
				
			||||||
 | 
						//	unsigned sz = 200;
 | 
				
			||||||
 | 
						//	std::wstring str(sz, L'\0');
 | 
				
			||||||
 | 
						//	sz = std::wcsftime(&str[0], str.size() - 1, fmt, tmb); 
 | 
				
			||||||
 | 
						//	str.resize(sz);
 | 
				
			||||||
 | 
						//	return str;
 | 
				
			||||||
 | 
						//}
 | 
				
			||||||
 | 
						// http://en.cppreference.com/w/cpp/chrono/c/wcsftime
 | 
				
			||||||
 | 
						// Defined in header <cwchar>
 | 
				
			||||||
 | 
						//	std::size_t wcsftime(wchar_t* str, std::size_t count, const wchar_t* format, const std::tm* time);
 | 
				
			||||||
 | 
						// Converts the date and time information from a given calendar time time to a null - terminated 
 | 
				
			||||||
 | 
						// wide character string str according to format string format.Up to count bytes are written.
 | 
				
			||||||
 | 
						//	Parameters
 | 
				
			||||||
 | 
						//	str - pointer to the first element of the wchar_t array for output
 | 
				
			||||||
 | 
						//	count - maximum number of wide characters to write
 | 
				
			||||||
 | 
						//	format - pointer to a null - terminated wide character string specifying the format of conversion.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					//#endif  // STD_put_time_NOT_SUPPORTED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace nana
 | 
					namespace nana
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	bool is_utf8(const char* str, unsigned len)
 | 
						bool is_utf8(const char* str, unsigned len)
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user