diff --git a/sdk/lib/ucrt/inc/corecrt_internal_stdio_output.h b/sdk/lib/ucrt/inc/corecrt_internal_stdio_output.h index 6f9878a52cc..86d7ffb4ecf 100644 --- a/sdk/lib/ucrt/inc/corecrt_internal_stdio_output.h +++ b/sdk/lib/ucrt/inc/corecrt_internal_stdio_output.h @@ -1009,7 +1009,7 @@ protected: __crt_cached_ptd_host& ptd, va_list const arglist ) throw() - : common_data{ptd}, + : common_data{ptd}, _output_adapter(output_adapter) { // We initialize several base class data members here, so that we can @@ -1209,7 +1209,7 @@ protected: #endif typedef positional_parameter_base self_type; - typedef format_validation_base base_type; + typedef format_validation_base base_type; typedef __crt_char_traits char_traits; template @@ -1296,7 +1296,7 @@ protected: { if (_format_mode == mode::nonpositional) { - return base_type::extract_argument_from_va_list(result); + return base_type::template extract_argument_from_va_list(result); } _UCRT_VALIDATE_RETURN(_ptd, _type_index >= 0 && _type_index < _ARGMAX, EINVAL, false); @@ -2274,7 +2274,7 @@ private: if (is_wide_character_specifier(_options, _format_char, _length)) { wchar_t wide_character{}; - if (!extract_argument_from_va_list(wide_character)) + if (!this->template extract_argument_from_va_list(wide_character)) { return false; } @@ -2286,7 +2286,7 @@ private: // Convert to multibyte. If the conversion fails, we suppress the // output operation but we do not fail the entire operation: - errno_t const status{_wctomb_internal(&_string_length, _buffer.data(), _buffer.count(), wide_character, _ptd)}; + errno_t const status{_wctomb_internal(&_string_length, _buffer.template data(), _buffer.template count(), wide_character, _ptd)}; if (status != 0) { _suppress_output = true; @@ -2296,7 +2296,7 @@ private: // to the output, as-is. else { - if (!extract_argument_from_va_list(_buffer.data()[0])) + if (!this->template extract_argument_from_va_list(_buffer.template data()[0])) { return false; } @@ -2309,7 +2309,7 @@ private: _string_length = 1; } - _narrow_string = _buffer.data(); + _narrow_string = _buffer.template data(); return true; } @@ -2320,7 +2320,7 @@ private: _string_is_wide = true; wchar_t wide_character{}; - if (!extract_argument_from_va_list(wide_character)) + if (!this->template extract_argument_from_va_list(wide_character)) return false; if (!should_format()) @@ -2334,7 +2334,7 @@ private: // output operation. char const local_buffer[2]{ static_cast(wide_character & 0x00ff), '\0' }; int const mbc_length{_mbtowc_internal( - _buffer.data(), + _buffer.template data(), local_buffer, _ptd.get_locale()->locinfo->_public._locale_mb_cur_max, _ptd @@ -2346,10 +2346,10 @@ private: } else { - _buffer.data()[0] = wide_character; + _buffer.template data()[0] = wide_character; } - _wide_string = _buffer.data(); + _wide_string = _buffer.template data(); _string_length = 1; return true; } @@ -2371,7 +2371,7 @@ private: }; ansi_string* string{}; - if (!extract_argument_from_va_list(string)) + if (!this->template extract_argument_from_va_list(string)) return false; if (!should_format()) @@ -2406,7 +2406,7 @@ private: // of the length of the C string and the given precision. Note that the // string needs not be null-terminated if a precision is given, so we // cannot call strlen to compute the length of the string. - if (!extract_argument_from_va_list(_narrow_string)) + if (!this->template extract_argument_from_va_list(_narrow_string)) return false; if (!should_format()) @@ -2505,18 +2505,18 @@ private: _precision = 1; // Per C Standard Library specification. } - if (!_buffer.ensure_buffer_is_big_enough(_CVTBUFSIZE + _precision, _ptd)) + if (!_buffer.template ensure_buffer_is_big_enough(_CVTBUFSIZE + _precision, _ptd)) { // If we fail to enlarge the buffer, cap precision so that the // statically-sized buffer may be used for the formatting: - _precision = static_cast(_buffer.count() - _CVTBUFSIZE); + _precision = static_cast(_buffer.template count() - _CVTBUFSIZE); } - _narrow_string = _buffer.data(); + _narrow_string = _buffer.template data(); // Note that we separately handle the FORMAT_POSSCAN_PASS above. _CRT_DOUBLE tmp{}; - if (!extract_argument_from_va_list<_CRT_DOUBLE>(tmp)) + if (!this->template extract_argument_from_va_list<_CRT_DOUBLE>(tmp)) { return false; } @@ -2524,10 +2524,10 @@ private: // Format the number into the buffer: __acrt_fp_format( &tmp.x, - _buffer.data(), - _buffer.count(), - _buffer.scratch_data(), - _buffer.scratch_count(), + _buffer.template data(), + _buffer.template count(), + _buffer.template scratch_data(), + _buffer.template scratch_count(), static_cast(_format_char), _precision, _options, @@ -2639,23 +2639,23 @@ private: { case sizeof(int8_t): extraction_result = has_flag(FL_SIGNED) - ? extract_argument_from_va_list(original_number) - : extract_argument_from_va_list(original_number); + ? this->template extract_argument_from_va_list(original_number) + : this->template extract_argument_from_va_list(original_number); break; case sizeof(int16_t): extraction_result = has_flag(FL_SIGNED) - ? extract_argument_from_va_list(original_number) - : extract_argument_from_va_list(original_number); + ? this->template extract_argument_from_va_list(original_number) + : this->template extract_argument_from_va_list(original_number); break; case sizeof(int32_t): extraction_result = has_flag(FL_SIGNED) - ? extract_argument_from_va_list(original_number) - : extract_argument_from_va_list(original_number); + ? this->template extract_argument_from_va_list(original_number) + : this->template extract_argument_from_va_list(original_number); break; case sizeof(int64_t): extraction_result = has_flag(FL_SIGNED) - ? extract_argument_from_va_list(original_number) - : extract_argument_from_va_list(original_number); + ? this->template extract_argument_from_va_list(original_number) + : this->template extract_argument_from_va_list(original_number); break; default: _UCRT_VALIDATE_RETURN(_ptd, ("Invalid integer length modifier", 0), EINVAL, false); @@ -2695,7 +2695,7 @@ private: else { unset_flag(FL_LEADZERO); - _buffer.ensure_buffer_is_big_enough(_precision, _ptd); + _buffer.template ensure_buffer_is_big_enough(_precision, _ptd); } // If the number is zero, we do not want to print the hex prefix ("0x"), @@ -2741,7 +2741,7 @@ private: // buffer at the end of the formatting buffer, which allows us to perform // the formatting from least to greatest magnitude, which maps well to // the math. - Character* const last_digit{_buffer.data() + _buffer.count() - 1}; + Character* const last_digit{_buffer.template data() + _buffer.template count() - 1}; Character*& string_pointer = tchar_string(); @@ -2773,7 +2773,7 @@ private: bool type_case_n() throw() { void* p{nullptr}; - if (!extract_argument_from_va_list(p)) + if (!this->template extract_argument_from_va_list(p)) return false; if (!should_format())