1*56a34939Shaad /* $NetBSD: util.h,v 1.1.1.1 2008/12/22 00:18:44 haad Exp $ */ 2*56a34939Shaad 3*56a34939Shaad /* 4*56a34939Shaad * Copyright (C) 2007 Red Hat, Inc. All rights reserved. 5*56a34939Shaad * 6*56a34939Shaad * This file is part of LVM2. 7*56a34939Shaad * 8*56a34939Shaad * This copyrighted material is made available to anyone wishing to use, 9*56a34939Shaad * modify, copy, or redistribute it subject to the terms and conditions 10*56a34939Shaad * of the GNU Lesser General Public License v.2.1. 11*56a34939Shaad * 12*56a34939Shaad * You should have received a copy of the GNU Lesser General Public License 13*56a34939Shaad * along with this program; if not, write to the Free Software Foundation, 14*56a34939Shaad * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 15*56a34939Shaad */ 16*56a34939Shaad 17*56a34939Shaad #ifndef _LVM_UTIL_H 18*56a34939Shaad #define _LVM_UTIL_H 19*56a34939Shaad 20*56a34939Shaad #define min(a, b) ({ typeof(a) _a = (a); \ 21*56a34939Shaad typeof(b) _b = (b); \ 22*56a34939Shaad (void) (&_a == &_b); \ 23*56a34939Shaad _a < _b ? _a : _b; }) 24*56a34939Shaad 25*56a34939Shaad #define max(a, b) ({ typeof(a) _a = (a); \ 26*56a34939Shaad typeof(b) _b = (b); \ 27*56a34939Shaad (void) (&_a == &_b); \ 28*56a34939Shaad _a > _b ? _a : _b; }) 29*56a34939Shaad 30*56a34939Shaad #define uninitialized_var(x) x = x 31*56a34939Shaad 32*56a34939Shaad #endif 33