1*6777b538SAndroid Build Coastguard Worker // Copyright 2021 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker // This file is designed to be included if windows.h is included from a source 6*6777b538SAndroid Build Coastguard Worker // file that should not need it. Conditionally including this file from a few 7*6777b538SAndroid Build Coastguard Worker // key source files will help to stop windows.h from creeping back into the 8*6777b538SAndroid Build Coastguard Worker // Chromium build, with the namespace pollution which that implies. Typical 9*6777b538SAndroid Build Coastguard Worker // usage is: 10*6777b538SAndroid Build Coastguard Worker // 11*6777b538SAndroid Build Coastguard Worker // // This should be after all other #includes. 12*6777b538SAndroid Build Coastguard Worker // #if defined(_WINDOWS_) // Detect whether windows.h was included. 13*6777b538SAndroid Build Coastguard Worker // #include "base/win/windows_h_disallowed.h" 14*6777b538SAndroid Build Coastguard Worker // #endif // defined(_WINDOWS_) 15*6777b538SAndroid Build Coastguard Worker // 16*6777b538SAndroid Build Coastguard Worker // See https://crbug.com/796644 for more historical context. 17*6777b538SAndroid Build Coastguard Worker 18*6777b538SAndroid Build Coastguard Worker #ifndef BASE_WIN_WINDOWS_H_DISALLOWED_H_ 19*6777b538SAndroid Build Coastguard Worker #define BASE_WIN_WINDOWS_H_DISALLOWED_H_ 20*6777b538SAndroid Build Coastguard Worker 21*6777b538SAndroid Build Coastguard Worker #error Windows.h was included unexpectedly. See comment above for details. 22*6777b538SAndroid Build Coastguard Worker 23*6777b538SAndroid Build Coastguard Worker #endif // BASE_WIN_WINDOWS_H_DISALLOWED_H_ 24