Added exclusion of C++ files for double slash fix

From-SVN: r20117
This commit is contained in:
Bruce Korb 1998-05-28 09:20:28 +00:00
parent 8a5b8e20b7
commit c16b55aa5e
5 changed files with 1717 additions and 1699 deletions

View File

@ -1,5 +1,5 @@
/*
* $Id: fixincl.c,v 1.1 1998/03/20 16:19:41 korbb Exp $
* $Id: fixincl.c,v 1.4 1998/08/05 10:20:11 korbb Exp $
*
* Install modified versions of certain ANSI-incompatible system header
* files which are fixed to work correctly with ANSI C and placed in a
@ -28,7 +28,6 @@
#include <sys/param.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/stropts.h>
#include <sys/wait.h>
#include <signal.h>
#include <stdio.h>
@ -36,8 +35,6 @@
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <stropts.h>
#include <poll.h>
#include <fcntl.h>
#include <ctype.h>
@ -138,7 +135,7 @@ main (argc, argv)
if (strcmp (argv[1], "-v") == 0)
{
fputs ("$Id: fixincl.c,v 1.1 1998/03/20 16:19:41 korbb Exp $\n", stderr);
fputs ("$Id: fixincl.c,v 1.3 1998/06/02 07:00:12 korbb Exp $\n", stderr);
exit (EXIT_SUCCESS);
}
@ -448,17 +445,18 @@ createFile (pzFile)
}
tSuccess
testTest (pTest)
testTest (pTest, pzFile)
tTestDesc *pTest;
char* pzFile;
{
char *pzRes;
tSuccess res = FAILURE;
static char zCmdBuf[4096];
tSCC zCmdFmt[] = "if ( test %s ) > /dev/null 2>&1\n"
tSCC zCmdFmt[] = "f=%s\nif ( test %s ) > /dev/null 2>&1\n"
"then echo TRUE\n" "else echo FALSE\n" "fi";
sprintf (zCmdBuf, zCmdFmt, pTest->pzTest);
sprintf (zCmdBuf, zCmdFmt, pzFile, pTest->pzTest);
pzRes = runShell (zCmdBuf);
if (*pzRes == 'T')
res = SUCCESS;
@ -643,7 +641,7 @@ process (pzDta, pzDir, pzFile)
* IF *any* of the shell tests fail,
* THEN do not process the fix.
*/
if (!SUCCESSFUL (testTest (pTD)))
if (!SUCCESSFUL (testTest (pTD, pzFile)))
goto nextFix;
break;

View File

@ -2,7 +2,7 @@
#
# DO NOT EDIT THIS FILE (fixincl.sh)
#
# It has been autogen-ed Thursday March 19, 1998 at 08:37:00 AM PST
# It has been autogen-ed Thursday May 28, 1998 at 08:21:16 AM PDT
# From the definitions inclhack.def
# and the template file inclhack.tpl
#
@ -14,19 +14,19 @@
#
# See README-fixinc for more information.
#
# inclhack is free software.
# fixincludes is free software.
#
# You may redistribute it and/or modify it under the terms of the
# GNU General Public License, as published by the Free Software
# Foundation; either version 2, or (at your option) any later version.
#
# inclhack is distributed in the hope that it will be useful,
# fixincludes is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with inclhack. See the file "COPYING". If not,
# along with fixincludes. See the file "COPYING". If not,
# write to: The Free Software Foundation, Inc.,
# 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
@ -80,6 +80,7 @@ if test -z "${target_canonical}" ; then
target_canonical="`config.guess`" ; fi
test -z "${target_canonical}" && target_canonical=unknown
fi
export target_canonical
# # # # # # # # # # # # # # # # # # # # #
#
@ -108,7 +109,7 @@ case $LIB in
;;
esac
echo Building fixed headers in ${LIB}
echo Fixing headers into ${LIB} for ${target_canonical} target
# Determine whether this system has symbolic links.
if ln -s X $LIB/ShouldNotExist 2>/dev/null; then

View File

@ -1,7 +1,7 @@
/*
* DO NOT EDIT THIS FILE (fixincl.x)
*
* It has been autogen-ed Thursday March 19, 1998 at 08:34:20 AM PST
* It has been autogen-ed Thursday May 28, 1998 at 08:21:12 AM PDT
* From the definitions inclhack.def
* and the template file fixincl.tpl
*
@ -56,7 +56,7 @@ tTestDesc aAix_SyswaitTests[] = {
*/
const char* apzAix_SyswaitPatch[] = { "sed",
"-e" "/^extern pid_t wait3();$/i\\\n"
"struct rusage;",
"struct rusage;\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -275,13 +275,13 @@ tSCC zAvoid_BoolList[] =
*/
const char* apzAvoid_BoolPatch[] = { "sed",
"-e" "/^#[ \t]*define[ \t][ \t]*bool[ \t][ \t]*char[ \t]*$/i\\\n"
"#ifndef __cplusplus",
"#ifndef __cplusplus\n",
"-e" "/^#[ \t]*define[ \t][ \t]*bool[ \t][ \t]*char[ \t]*$/a\\\n"
"#endif",
"#endif\n",
"-e" "/^typedef[ \t][ \t]*char[ \t][ \t]*bool[ \t]*;/i\\\n"
"#ifndef __cplusplus",
"#ifndef __cplusplus\n",
"-e" "/^typedef[ \t][ \t]*char[ \t][ \t]*bool[ \t]*;/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -314,11 +314,11 @@ const char* apzBad_Malloc_DeclPatch[] = { "sed",
"#ifdef __cplusplus\\\n"
"extern \"C\" {\\\n"
"#endif\\\n"
"",
"\n",
"-e" "$a\\\n"
"#ifdef __cplusplus\\\n"
"}\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -405,7 +405,7 @@ tTestDesc aBroken_Assert_StdioTests[] = {
*/
const char* apzBroken_Assert_StdioPatch[] = { "sed",
"-e" "1i\\\n"
"#include <stdio.h>",
"#include <stdio.h>\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -444,7 +444,7 @@ const char* apzBroken_Assert_StdlibPatch[] = { "sed",
"-e" "1i\\\n"
"#ifdef __cplusplus\\\n"
"#include <stdlib.h>\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -766,11 +766,11 @@ const char* apzHpux_Cxx_UnreadyPatch[] = { "sed",
"#ifdef __cplusplus\\\n"
"extern \"C\" {\\\n"
"#endif\\\n"
"",
"\n",
"-e" "$a\\\n"
"#ifdef __cplusplus\\\n"
"}\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -792,9 +792,9 @@ tSCC zHpux_MaxintList[] =
*/
const char* apzHpux_MaxintPatch[] = { "sed",
"-e" "/^#[ \t]*define[ \t]*MAXINT[ \t]/i\\\n"
"#ifndef MAXINT",
"#ifndef MAXINT\n",
"-e" "/^#[ \t]*define[ \t]*MAXINT[ \t]/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1082,7 +1082,7 @@ tTestDesc aIrix_SockaddrTests[] = {
*/
const char* apzIrix_SockaddrPatch[] = { "sed",
"-e" "/authdes_create.*struct sockaddr/i\\\n"
"struct sockaddr;",
"struct sockaddr;\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1104,7 +1104,7 @@ tSCC zIrix_Struct__FileList[] =
*/
const char* apzIrix_Struct__FilePatch[] = { "sed",
"-e" "/xdrstdio_create.*struct __file_s/i\\\n"
"struct __file_s;",
"struct __file_s;\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1239,29 +1239,29 @@ tTestDesc aLimits_IfndefsTests[] = {
*/
const char* apzLimits_IfndefsPatch[] = { "sed",
"-e" "/[ \t]FLT_MIN[ \t]/i\\\n"
"#ifndef FLT_MIN",
"#ifndef FLT_MIN\n",
"-e" "/[ \t]FLT_MIN[ \t]/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]FLT_MAX[ \t]/i\\\n"
"#ifndef FLT_MAX",
"#ifndef FLT_MAX\n",
"-e" "/[ \t]FLT_MAX[ \t]/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]FLT_DIG[ \t]/i\\\n"
"#ifndef FLT_DIG",
"#ifndef FLT_DIG\n",
"-e" "/[ \t]FLT_DIG[ \t]/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]DBL_MIN[ \t]/i\\\n"
"#ifndef DBL_MIN",
"#ifndef DBL_MIN\n",
"-e" "/[ \t]DBL_MIN[ \t]/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]DBL_MAX[ \t]/i\\\n"
"#ifndef DBL_MAX",
"#ifndef DBL_MAX\n",
"-e" "/[ \t]DBL_MAX[ \t]/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]DBL_DIG[ \t]/i\\\n"
"#ifndef DBL_DIG",
"#ifndef DBL_DIG\n",
"-e" "/[ \t]DBL_DIG[ \t]/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1345,7 +1345,7 @@ const char* apzM88k_Bad_Hypot_OptPatch[] = { "sed",
"{\\\n"
"\treturn fabs (hypot (x, y));\\\n"
"}\\\n"
"#define hypot\tfake_hypot",
"#define hypot\tfake_hypot\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1506,19 +1506,19 @@ const char* apzMath_ExceptionPatch[] = { "sed",
"-e" "/struct exception/i\\\n"
"#ifdef __cplusplus\\\n"
"#define exception __math_exception\\\n"
"#endif",
"#endif\n",
"-e" "/struct exception/a\\\n"
"#ifdef __cplusplus\\\n"
"#undef exception\\\n"
"#endif",
"#endif\n",
"-e" "/matherr/i\\\n"
"#ifdef __cplusplus\\\n"
"#define exception __math_exception\\\n"
"#endif",
"#endif\n",
"-e" "/matherr/a\\\n"
"#ifdef __cplusplus\\\n"
"#undef exception\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1599,7 +1599,7 @@ const char* apzMotorola_Stupid_OptPatch[] = { "sed",
"{\\\n"
"\treturn fabs (hypot (x, y));\\\n"
"}\\\n"
"#define hypot\tfake_hypot",
"#define hypot\tfake_hypot\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1650,9 +1650,9 @@ tTestDesc aNews_Os_RecursionTests[] = {
*/
const char* apzNews_Os_RecursionPatch[] = { "sed",
"-e" "/^#include <stdlib.h>/i\\\n"
"#ifdef BOGUS_RECURSION",
"#ifdef BOGUS_RECURSION\n",
"-e" "/^#include <stdlib.h>/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1794,8 +1794,15 @@ tSCC zNo_Double_SlashName[] =
tSCC zNo_Double_SlashSelect0[] =
"//[^*]";
#define NO_DOUBLE_SLASH_TEST_CT 1
/*
* content test pattern. A shell will deal with it later.
*/
tSCC zNo_Double_SlashTest0[] =
"-z \"`echo ${f}|grep ++`\"";
#define NO_DOUBLE_SLASH_TEST_CT 2
tTestDesc aNo_Double_SlashTests[] = {
{ TT_TEST, zNo_Double_SlashTest0, 0 /* unused */ },
{ TT_EGREP, zNo_Double_SlashSelect0, (regex_t*)NULL } };
/*
@ -1887,7 +1894,7 @@ const char* apzOsf_Namespace_BPatch[] = { "sed",
"-e" "/#include <reg_types.h>/a\\\n"
"typedef __regex_t\tregex_t;\\\n"
"typedef __regoff_t\tregoff_t;\\\n"
"typedef __regmatch_t\tregmatch_t;",
"typedef __regmatch_t\tregmatch_t;\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -1946,9 +1953,9 @@ tTestDesc aRs6000_DoubleTests[] = {
*/
const char* apzRs6000_DoublePatch[] = { "sed",
"-e" "/class[(]/i\\\n"
"#ifndef __cplusplus",
"#ifndef __cplusplus\n",
"-e" "/class[(]/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2186,9 +2193,9 @@ const char* apzSun_CatmacroPatch[] = { "sed",
"-e" "/^#define[ \t]CAT(a,b)/ i\\\n"
"#ifdef __STDC__ \\\n"
"#define CAT(a,b) a##b\\\n"
"#else",
"#else\n",
"-e" "/^#define[ \t]CAT(a,b)/ a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2260,7 +2267,7 @@ const char* apzSun_MemcpyPatch[] = { "sed",
"\\\n"
"extern int memcmp();\\\n"
"\\\n"
"#endif /* __memory_h__ */",
"#endif /* __memory_h__ */\n",
"-e" "1,$d",
(char*)NULL };
@ -2323,9 +2330,9 @@ const char* apzSun_SignalPatch[] = { "sed",
"-e" "/^void\t(\\*signal())();$/i\\\n"
"#ifdef __cplusplus\\\n"
"void\t(*signal(...))(...);\\\n"
"#else",
"#else\n",
"-e" "/^void\t(\\*signal())();$/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2404,7 +2411,7 @@ tTestDesc aSunos_Matherr_DeclTests[] = {
*/
const char* apzSunos_Matherr_DeclPatch[] = { "sed",
"-e" "/matherr/i\\\n"
"struct exception;",
"struct exception;\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2469,20 +2476,20 @@ const char* apzSystypesPatch[] = { "sed",
"-e" "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]size_t/i\\\n"
"#ifndef __SIZE_TYPE__\\\n"
"#define __SIZE_TYPE__ long unsigned int\\\n"
"#endif",
"#endif\n",
"-e" "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]size_t/typedef __SIZE_TYPE__ size_t/",
"-e" "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]ptrdiff_t/i\\\n"
"#ifndef __PTRDIFF_TYPE__\\\n"
"#define __PTRDIFF_TYPE__ long int\\\n"
"#endif",
"#endif\n",
"-e" "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]ptrdiff_t/typedef __PTRDIFF_TYPE__ ptrdiff_t/",
"-e" "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/i\\\n"
"#ifndef __WCHAR_TYPE__\\\n"
"#define __WCHAR_TYPE__ int\\\n"
"#endif\\\n"
"#ifndef __cplusplus",
"#ifndef __cplusplus\n",
"-e" "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/a\\\n"
"#endif",
"#endif\n",
"-e" "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/typedef __WCHAR_TYPE__ wchar_t/",
(char*)NULL };
@ -2514,9 +2521,9 @@ tTestDesc aSystypes_For_AixTests[] = {
const char* apzSystypes_For_AixPatch[] = { "sed",
"-e" "/typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t/i\\\n"
"#ifndef _GCC_SIZE_T\\\n"
"#define _GCC_SIZE_T",
"#define _GCC_SIZE_T\n",
"-e" "/typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2576,9 +2583,9 @@ const char* apzSysz_Stdlib_For_SunPatch[] = { "sed",
"-e" "s/int[ \t][ \t]*exit/void\texit/g",
"-e" "/typedef[ \ta-zA-Z_]*[ \t]size_t[ \t]*;/i\\\n"
"#ifndef _GCC_SIZE_T\\\n"
"#define _GCC_SIZE_T",
"#define _GCC_SIZE_T\n",
"-e" "/typedef[ \ta-zA-Z_]*[ \t]size_t[ \t]*;/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2601,19 +2608,19 @@ tSCC zSysz_Stdtypes_For_SunList[] =
const char* apzSysz_Stdtypes_For_SunPatch[] = { "sed",
"-e" "/[\t ]size_t.*;/i\\\n"
"#ifndef _GCC_SIZE_T\\\n"
"#define _GCC_SIZE_T",
"#define _GCC_SIZE_T\n",
"-e" "/[\t ]size_t.*;/a\\\n"
"#endif",
"#endif\n",
"-e" "/[\t ]ptrdiff_t.*;/i\\\n"
"#ifndef _GCC_PTRDIFF_T\\\n"
"#define _GCC_PTRDIFF_T",
"#define _GCC_PTRDIFF_T\n",
"-e" "/[\t ]ptrdiff_t.*;/a\\\n"
"#endif",
"#endif\n",
"-e" "/[\t ]wchar_t.*;/i\\\n"
"#ifndef _GCC_WCHAR_T\\\n"
"#define _GCC_WCHAR_T",
"#define _GCC_WCHAR_T\n",
"-e" "/[\t ]wchar_t.*;/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2664,7 +2671,7 @@ tTestDesc aUltrix_Ansi_CompatTests[] = {
*/
const char* apzUltrix_Ansi_CompatPatch[] = { "sed",
"-e" "1i\\\n"
"/* This file intentionally left blank. */",
"/* This file intentionally left blank. */\n",
"-e" "1,$d",
(char*)NULL };
@ -2836,7 +2843,7 @@ tTestDesc aUndefine_NullTests[] = {
*/
const char* apzUndefine_NullPatch[] = { "sed",
"-e" "/^#[ \t]*define[ \t][ \t]*NULL[ \t]/i\\\n"
"#undef NULL",
"#undef NULL\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -2939,19 +2946,19 @@ const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
"-e" "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
"-e" "/[ \t]size_t/i\\\n"
"#ifndef _GCC_SIZE_T\\\n"
"#define _GCC_SIZE_T",
"#define _GCC_SIZE_T\n",
"-e" "/[ \t]size_t/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]ptrdiff_t/i\\\n"
"#ifndef _GCC_PTRDIFF_T\\\n"
"#define _GCC_PTRDIFF_T",
"#define _GCC_PTRDIFF_T\n",
"-e" "/[ \t]ptrdiff_t/a\\\n"
"#endif",
"#endif\n",
"-e" "/[ \t]wchar_t/i\\\n"
"#ifndef _GCC_WCHAR_T\\\n"
"#define _GCC_WCHAR_T",
"#define _GCC_WCHAR_T\n",
"-e" "/[ \t]wchar_t/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -3023,7 +3030,7 @@ tTestDesc aVxworks_Needs_VxworksTests[] = {
*/
const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
"-e" "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n"
"#include <types/vxTypesOld.h>",
"#include <types/vxTypesOld.h>\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -3067,7 +3074,7 @@ const char* apzVxworks_TimePatch[] = { "sed",
"typedef void (*__gcc_VOIDFUNCPTR) ();\\\n"
"#endif\\\n"
"#define __gcc_VOIDFUNCPTR_defined\\\n"
"#endif",
"#endif\n",
"-e" "s/VOIDFUNCPTR/__gcc_VOIDFUNCPTR/g",
(char*)NULL };
@ -3100,9 +3107,9 @@ const char* apzX11_ClassPatch[] = { "sed",
"-e" "/char [*]class;/i\\\n"
"#ifdef __cplusplus\\\n"
"\tchar *c_class;\\\n"
"#else",
"#else\n",
"-e" "/char [*]class;/a\\\n"
"#endif",
"#endif\n",
(char*)NULL };
/* * * * * * * * * * * * * * * * * * * * * * * * * *
@ -3163,9 +3170,9 @@ const char* apzX11_NewPatch[] = { "sed",
"-e" "/Widget\told, new;/i\\\n"
"#ifdef __cplusplus\\\n"
"\tWidget\told, c_new;\\\n"
"#else",
"#else\n",
"-e" "/Widget\told, new;/a\\\n"
"#endif",
"#endif\n",
"-e" "s/Widget new,/Widget c_new,/g",
(char*)NULL };

View File

@ -1,4 +1,4 @@
/* -*- Mode: C -*- $Id: inclhack.def,v 1.1 1998/03/20 16:19:41 korbb Exp $ */
/* -*- Mode: C -*- $Id: inclhack.def,v 1.6 1998/09/22 07:22:00 korbb Exp $ */
autogen definitions inclhack;
@ -991,9 +991,12 @@ fix = {
/*
* Remove the double-slash comments
* They *must* be removed so it will not create nested comments!!
* However, they will *not* be removed if '++' is in any part of
* their file name.
*/
fix = {
hackname = no_double_slash;
test = '-z "`echo ${f}|grep ++`"';
select = '//[^*]';
sed = '/\/\/[^*]/' "s|//\\(.*\\)$|/* \\1 */|";
};

File diff suppressed because it is too large Load Diff