webrtc/rtc_base/system
Mirko Bonadei c35333d1fd Add RTC_EXPORT_TEMPLATE_{DECLARE,DEFINE} macros.
This CL adds macros to correctly export template instantiation
declarations and definitions. These macros have been borrowed from
Chromium's //base/export_template.h [1] and are supposed to be used
together with RTC_EXPORT [2].

The goal is to start using explicit template instatiation declarations
(introduced in C++11) [3] and remove workarounds that are not compatible
with all the compilers. An example can be found in [4], where in order
to workaround crbug.com/1018579, another workaround was almost created
before being stopped at code review time.

[1] - https://cs.chromium.org/chromium/src/base/export_template.h
[2] - https://cs.chromium.org/chromium/src/third_party/webrtc/rtc_base/system/rtc_export.h
[3] - https://en.cppreference.com/w/cpp/language/class_template#Explicit_instantiation
[4] - https://webrtc-review.googlesource.com/c/src/+/158674

Bug: webrtc:9419
Change-Id: I2e9287a15e28f619462e0b9a5deb0b672be248c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158742
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29661}
2019-10-31 11:12:52 +00:00
..
arch.h Handle macro _M_ARM64 for MSVC build 2019-09-24 08:34:04 +00:00
asm_defines.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
BUILD.gn Add RTC_EXPORT_TEMPLATE_{DECLARE,DEFINE} macros. 2019-10-31 11:12:52 +00:00
cocoa_threading.h Get rid of thread_darwin file. 2018-10-12 12:53:59 +00:00
cocoa_threading.mm Get rid of thread_darwin file. 2018-10-12 12:53:59 +00:00
DEPS rtc::Event::Wait(kForever): Print stack trace when we deadlock 2019-03-25 09:37:12 +00:00
fallthrough.h
file_wrapper.cc Delete class PlatformFile. 2019-08-06 09:07:50 +00:00
file_wrapper.h Delete class PlatformFile. 2019-08-06 09:07:50 +00:00
ignore_warnings.h Break out the part of the iSAC codec that's used for Voice Activity Detection 2018-05-04 08:53:34 +00:00
inline.h RTC_LOG_* macros: Implement argument passing with a single variadic call 2018-05-23 23:15:04 +00:00
rtc_export.h Add rtc_enable_symbol_export to incrementally create a WebRTC component. 2018-10-10 11:04:34 +00:00
rtc_export_template.h Add RTC_EXPORT_TEMPLATE_{DECLARE,DEFINE} macros. 2019-10-31 11:12:52 +00:00
thread_registry.cc Clarify expectation on GlobalLock 2019-10-11 13:11:11 +00:00
thread_registry.h Let threads opt in to having their stack traces printed 2019-03-14 11:46:28 +00:00
unused.h Remove typedefs.h from webrtc/ root (part 1) 2018-05-23 12:07:10 +00:00
warn_current_thread_is_deadlocked.cc rtc::Event::Wait(kForever): Print stack trace when we deadlock 2019-03-25 09:37:12 +00:00
warn_current_thread_is_deadlocked.h rtc::Event::Wait(kForever): Print stack trace when we deadlock 2019-03-25 09:37:12 +00:00