From b51e9c62f99d0cbd87924771f08c3485a0f12300 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sun, 27 Feb 1994 15:19:23 -0500 Subject: [PATCH] (id_clash_len): Now unsigned. (warn_larger_than, larger_than_size): New variables. (main): Support -Wlarger-than-NN. From-SVN: r6652 --- gcc/toplev.c | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/gcc/toplev.c b/gcc/toplev.c index 4ee173c..3b3928e 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -745,7 +745,14 @@ int warn_cast_align; characters. The value N is in `id_clash_len'. */ int warn_id_clash; -int id_clash_len; +unsigned id_clash_len; + +/* Nonzero means warn about any objects definitions whose size is larger + than N bytes. Also want about function definitions whose returned + values are larger than N bytes. The value N is in `larger_than_size'. */ + +int warn_larger_than; +unsigned larger_than_size; /* Nonzero means warn if inline function is too large. */ @@ -3547,6 +3554,24 @@ main (argc, argv, envp) id_clash_len = atoi (str + 10); id_clash_lose: ; } + else if (!strncmp (p, "larger-than-", 12)) + { + char *endp = p + 12; + + while (*endp) + { + if (*endp >= '0' && *endp <= '9') + endp++; + else + { + error ("Invalid option `%s'", argv[i]); + goto larger_than_lose; + } + } + warn_larger_than = 1; + larger_than_size = atoi (str + 13); + larger_than_lose: ; + } else error ("Invalid option `%s'", argv[i]); } -- 2.7.4