# HG changeset patch # User eosterlund # Date 1496770294 14400 # Node ID bb5c32e2d31a5dd9e6b4bc1fc7254e039f836000 # Parent e64b1cb48d6e7703928a9d1da106fc27f8cb65fd 8161145: The min/max macros make hotspot tests fail to build with GCC 6 Summary: Change min/max macros to expand (once) to self. Reviewed-by: sgehwolf, pliden, andrew diff -r e64b1cb48d6e -r bb5c32e2d31a src/share/vm/utilities/globalDefinitions.hpp --- a/src/share/vm/utilities/globalDefinitions.hpp Fri Jun 02 10:37:05 2017 -0400 +++ b/src/share/vm/utilities/globalDefinitions.hpp Tue Jun 06 13:31:34 2017 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1095,8 +1095,11 @@ #undef min #endif -#define max(a,b) Do_not_use_max_use_MAX2_instead -#define min(a,b) Do_not_use_min_use_MIN2_instead +// The following defines serve the purpose of preventing use of accidentally +// included min max macros from compiling, while continuing to allow innocent +// min and max identifiers in the code to compile as intended. +#define max max +#define min min // It is necessary to use templates here. Having normal overloaded // functions does not work because it is necessary to provide both 32-