diff --git a/Jupiter/CString_Imp.h b/Jupiter/CString_Imp.h index 41e03e9..d34e898 100644 --- a/Jupiter/CString_Imp.h +++ b/Jupiter/CString_Imp.h @@ -27,6 +27,17 @@ #include "Functions.h" #include "CString.h" +#if !defined va_copy + +#if defined __INTEL_COMPILER +#pragma message("Warning: va_copy not properly defined. Assuming common implementation.") +#define va_copy(dst, src) ((void)((dst) = (src))) +#else +#error "va_copy not defined." +#endif // __INTEL_COMPILER + +#endif // va_copy + /** * IMPLEMENTATION: * CString_Type @@ -247,9 +258,9 @@ template Jupiter::CString_Strict Jupiter::CString_Strict::subs return Jupiter::CString_Strict::substring(*this, pos, Jupiter::String_Type::length - pos); } -template Jupiter::CString_Strict Jupiter::CString_Strict::substring(size_t pos, size_t length) const +template Jupiter::CString_Strict Jupiter::CString_Strict::substring(size_t pos, size_t len) const { - return Jupiter::CString_Strict::substring(*this, pos, length); + return Jupiter::CString_Strict::substring(*this, pos, len); } template Jupiter::CString_Strict Jupiter::CString_Strict::substring(const Jupiter::String_Type &in, size_t pos) @@ -263,13 +274,13 @@ template Jupiter::CString_Strict Jupiter::CString_Strict::subs return r; } -template Jupiter::CString_Strict Jupiter::CString_Strict::substring(const Jupiter::String_Type &in, size_t pos, size_t length) +template Jupiter::CString_Strict Jupiter::CString_Strict::substring(const Jupiter::String_Type &in, size_t pos, size_t len) { if (pos > in.size()) return Jupiter::CString_Strict(); - if (length > in.size() - pos) length = in.size() - pos; - Jupiter::CString_Strict r = Jupiter::CString_Strict(length); + if (len > in.size() - pos) len = in.size() - pos; + Jupiter::CString_Strict r = Jupiter::CString_Strict(len); size_t index; - for (index = 0; index != length && in.get(index + pos) != 0; index++) r.str[index] = in.get(index + pos); + for (index = 0; index != len && in.get(index + pos) != 0; index++) r.str[index] = in.get(index + pos); r.str[index] = 0; r.length = index; return r; @@ -724,13 +735,13 @@ template Jupiter::CString_Loose Jupiter::CString_Loose::substr return r; } -template Jupiter::CString_Loose Jupiter::CString_Loose::substring(const Jupiter::String_Type &in, size_t pos, size_t length) +template Jupiter::CString_Loose Jupiter::CString_Loose::substring(const Jupiter::String_Type &in, size_t pos, size_t len) { if (pos > in.size()) return Jupiter::CString_Loose(); - if (length > in.size() - pos) length = in.size() - pos; - Jupiter::CString_Loose r = Jupiter::CString_Loose(length); + if (len > in.size() - pos) len = in.size() - pos; + Jupiter::CString_Loose r = Jupiter::CString_Loose(len); size_t index; - for (index = 0; index != length && in.get(index + pos) != 0; index++) r.str[index] = in.get(index + pos); + for (index = 0; index != len && in.get(index + pos) != 0; index++) r.str[index] = in.get(index + pos); r.str[index] = 0; r.length = index; return r; diff --git a/Jupiter/Shift_String_Imp.h b/Jupiter/Shift_String_Imp.h index c01151e..958cb86 100644 --- a/Jupiter/Shift_String_Imp.h +++ b/Jupiter/Shift_String_Imp.h @@ -24,21 +24,21 @@ * Note: Modification of this file is not supported in any way. */ -template size_t Jupiter::Shift_String_Type::shiftLeft(size_t length) +template size_t Jupiter::Shift_String_Type::shiftLeft(size_t len) { size_t offset = Jupiter::String_Type::str - Jupiter::Shift_String_Type::base; if (length > offset) length = offset; - Jupiter::String_Type::str -= length; - Jupiter::String_Type::length += length; + Jupiter::String_Type::str -= len; + Jupiter::String_Type::length += len; return length; } -template size_t Jupiter::Shift_String_Type::shiftRight(size_t length) +template size_t Jupiter::Shift_String_Type::shiftRight(size_t len) { if (length > Jupiter::String_Type::length) length = Jupiter::String_Type::length; - Jupiter::String_Type::str += length; - Jupiter::String_Type::length -= length; - return length; + Jupiter::String_Type::str += len; + Jupiter::String_Type::length -= len; + return len; } #endif // _SHIFT_STRING_IMP_H_HEADER \ No newline at end of file