blob: 0f74bd2446de17dfb9d3ec072e8aa9783cdf0f23 [file] [log] [blame]
kwiberg2b11fd22016-09-09 03:35:24 -07001/*
2 * Copyright 2016 The WebRTC Project Authors. All rights reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020011#include "api/optional.h"
kwiberg2b11fd22016-09-09 03:35:24 -070012
13namespace rtc {
14namespace optional_internal {
15
16#if RTC_HAS_ASAN
17
Hans Wennborgbda78c92018-04-10 12:36:59 +020018const void* FunctionThatDoesNothingImpl(const void* x) {
kwiberg84f6a3f2017-09-05 08:43:13 -070019 return x;
20}
kwiberg2b11fd22016-09-09 03:35:24 -070021
22#endif
23
Oskar Sundbome4032122017-11-15 12:24:28 +010024struct NulloptArg {
25 constexpr NulloptArg() {}
26};
27
28static NulloptArg nullopt_arg;
29
kwiberg2b11fd22016-09-09 03:35:24 -070030} // namespace optional_internal
Oskar Sundbome4032122017-11-15 12:24:28 +010031
32const nullopt_t nullopt(rtc::optional_internal::nullopt_arg);
33
kwiberg2b11fd22016-09-09 03:35:24 -070034} // namespace rtc