diff --git a/ucb/source/ucp/webdav/NeonLockStore.cxx b/ucb/source/ucp/webdav/NeonLockStore.cxx index 9cb3ec9adabb..5ae25e144415 100644 --- a/ucb/source/ucp/webdav/NeonLockStore.cxx +++ b/ucb/source/ucp/webdav/NeonLockStore.cxx @@ -29,7 +29,7 @@ // MARKER(update_precomp.py): autogen include statement, do not remove #include "precompiled_ucb.hxx" -#include +#include "warnings_guard_ne_locks.h" #include #include "rtl/ustring.hxx" #include "osl/time.h" diff --git a/ucb/source/ucp/webdav/NeonLockStore.hxx b/ucb/source/ucp/webdav/NeonLockStore.hxx index 7d253e773328..3b6fbdeb56c3 100644 --- a/ucb/source/ucp/webdav/NeonLockStore.hxx +++ b/ucb/source/ucp/webdav/NeonLockStore.hxx @@ -29,7 +29,7 @@ #define INCLUDED_NEONLOCKSTORE_HXX #include -#include "ne_locks.h" +#include "warnings_guard_ne_locks.h" #include "osl/mutex.hxx" #include "rtl/ref.hxx" #include "NeonTypes.hxx" diff --git a/ucb/source/ucp/webdav/NeonTypes.hxx b/ucb/source/ucp/webdav/NeonTypes.hxx index d1f8ffaf32f3..d6c27417439c 100644 --- a/ucb/source/ucp/webdav/NeonTypes.hxx +++ b/ucb/source/ucp/webdav/NeonTypes.hxx @@ -33,7 +33,7 @@ #include #include #include -#include +#include "warnings_guard_ne_locks.h" typedef ne_session HttpSession; typedef ne_status HttpStatus; diff --git a/ucb/source/ucp/webdav/warnings_guard_ne_locks.h b/ucb/source/ucp/webdav/warnings_guard_ne_locks.h new file mode 100644 index 000000000000..c5ee6a0ed369 --- /dev/null +++ b/ucb/source/ucp/webdav/warnings_guard_ne_locks.h @@ -0,0 +1,54 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * Version: MPL 1.1 / GPLv3+ / LGPLv3+ + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License or as specified alternatively below. You may obtain a copy of + * the License at http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * Major Contributor(s): + * [ Copyright (C) 2011 Eike Rathke (initial developer) ] + * + * All Rights Reserved. + * + * For minor contributions see the git repository. + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 3 or later (the "GPLv3+"), or + * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"), + * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable + * instead of those above. + */ + +#ifndef INCLUDED_WARNINGS_GUARD_NE_LOCKS_H +#define INCLUDED_WARNINGS_GUARD_NE_LOCKS_H + +// Because the GCC system_header mechanism doesn't work in .c/.cxx compilation +// units and more important affects the rest of the current include file, the +// warnings guard is separated into this header file on its own. + +/* + Silence down this WaE: + /usr/include/neon/ne_locks.h:125:51: warning: 'int ne_lock(ne_session*, ne_lock*)' + hides constructor for 'struct ne_lock' [-Wshadow] +*/ + +#ifdef _MSC_VER +#pragma warning(push, 1) +#elif defined __GNUC__ +#pragma GCC system_header +#endif +#include +#ifdef _MSC_VER +#pragma warning(pop) +#endif + +#endif // INCLUDED_WARNINGS_GUARD_NE_LOCKS_H + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */