Commit 7507b193 authored by Tom Lane's avatar Tom Lane

Don't expose the inline definition of MemoryContextSwitchTo when FRONTEND is

defined.  Its reference to CurrentMemoryContext causes link failures on some
platforms, evidently because the inline function gets compiled despite lack of
use.  Per buildfarm member warthog.
parent 8eccf761
......@@ -21,7 +21,7 @@
* Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $PostgreSQL: pgsql/src/include/utils/palloc.h,v 1.43 2010/02/13 02:34:16 tgl Exp $
* $PostgreSQL: pgsql/src/include/utils/palloc.h,v 1.44 2010/02/13 20:46:52 tgl Exp $
*
*-------------------------------------------------------------------------
*/
......@@ -73,8 +73,12 @@ extern void *repalloc(void *pointer, Size size);
/*
* MemoryContextSwitchTo can't be a macro in standard C compilers.
* But we can make it an inline function if the compiler supports it.
*
* This file has to be includable by some non-backend code such as
* pg_resetxlog, so don't expose the CurrentMemoryContext reference
* if FRONTEND is defined.
*/
#ifdef USE_INLINE
#if defined(USE_INLINE) && !defined(FRONTEND)
static inline MemoryContext
MemoryContextSwitchTo(MemoryContext context)
......@@ -87,7 +91,7 @@ MemoryContextSwitchTo(MemoryContext context)
#else
extern MemoryContext MemoryContextSwitchTo(MemoryContext context);
#endif /* USE_INLINE */
#endif /* USE_INLINE && !FRONTEND */
/*
* These are like standard strdup() except the copied string is
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment