186d7f5d3SJohn Marino /* $NetBSD: util.h,v 1.1.1.1 2008/12/22 00:18:13 haad Exp $ */ 286d7f5d3SJohn Marino 386d7f5d3SJohn Marino /* 486d7f5d3SJohn Marino * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 586d7f5d3SJohn Marino * 686d7f5d3SJohn Marino * This file is part of LVM2. 786d7f5d3SJohn Marino * 886d7f5d3SJohn Marino * This copyrighted material is made available to anyone wishing to use, 986d7f5d3SJohn Marino * modify, copy, or redistribute it subject to the terms and conditions 1086d7f5d3SJohn Marino * of the GNU Lesser General Public License v.2.1. 1186d7f5d3SJohn Marino * 1286d7f5d3SJohn Marino * You should have received a copy of the GNU Lesser General Public License 1386d7f5d3SJohn Marino * along with this program; if not, write to the Free Software Foundation, 1486d7f5d3SJohn Marino * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 1586d7f5d3SJohn Marino */ 1686d7f5d3SJohn Marino 1786d7f5d3SJohn Marino #ifndef _LVM_UTIL_H 1886d7f5d3SJohn Marino #define _LVM_UTIL_H 1986d7f5d3SJohn Marino 2086d7f5d3SJohn Marino #define min(a, b) ({ typeof(a) _a = (a); \ 2186d7f5d3SJohn Marino typeof(b) _b = (b); \ 2286d7f5d3SJohn Marino (void) (&_a == &_b); \ 2386d7f5d3SJohn Marino _a < _b ? _a : _b; }) 2486d7f5d3SJohn Marino 2586d7f5d3SJohn Marino #define max(a, b) ({ typeof(a) _a = (a); \ 2686d7f5d3SJohn Marino typeof(b) _b = (b); \ 2786d7f5d3SJohn Marino (void) (&_a == &_b); \ 2886d7f5d3SJohn Marino _a > _b ? _a : _b; }) 2986d7f5d3SJohn Marino 3086d7f5d3SJohn Marino #define uninitialized_var(x) x = x 3186d7f5d3SJohn Marino 3286d7f5d3SJohn Marino #endif 33