* [PATCH 1/2] Fix signed char problem in scripts/basic
@ 2005-06-22 9:02 Pierre Ossman
2005-06-22 14:42 ` Roman Zippel
0 siblings, 1 reply; 3+ messages in thread
From: Pierre Ossman @ 2005-06-22 9:02 UTC (permalink / raw)
To: zippel, kbuild-devel, LKML
[-- Attachment #1: Type: text/plain, Size: 922 bytes --]
The signed characters in scripts are causing warnings with GCC 4 on
systems with proper string functions (with char*, not signed char* as
parameters). Some could be kept signed but most had to be reverted to
normal chars.
Detailed changlog:
fixdep.c:
- is_defined_config() just used memcmp so it was changed to use
signed strings.
- define_config() was called with both signed and "normal"
strings. Since no string functions were used the parameter was
changed to void *.
- use_config() only called is_defined_config() and
define_config() so it could use signed strings.
- parse_dep_file() used strchr() so it needed to lose the
signed.
docproc.c:
- All signed strings were removed because they were all
directly or indirectly used in string functions.
split-include.c:
- The only signed string here was removed because of usage with
strstr().
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
[-- Attachment #2: signed-char-basic.patch --]
[-- Type: text/x-patch, Size: 3423 bytes --]
Index: linux-wbsd/scripts/basic/fixdep.c
===================================================================
--- linux-wbsd/scripts/basic/fixdep.c (revision 134)
+++ linux-wbsd/scripts/basic/fixdep.c (working copy)
@@ -159,7 +159,7 @@
/*
* Lookup a value in the configuration string.
*/
-int is_defined_config(const char * name, int len)
+int is_defined_config(const signed char * name, int len)
{
const char * pconfig;
const char * plast = str_config + len_config - len;
@@ -175,7 +175,7 @@
/*
* Add a new value to the configuration string.
*/
-void define_config(const char * name, int len)
+void define_config(const void * name, int len)
{
grow_config(len + 1);
@@ -196,7 +196,7 @@
/*
* Record the use of a CONFIG_* word.
*/
-void use_config(char *m, int slen)
+void use_config(signed char *m, int slen)
{
char s[PATH_MAX];
char *p;
@@ -291,9 +291,9 @@
void parse_dep_file(void *map, size_t len)
{
- signed char *m = map;
- signed char *end = m + len;
- signed char *p;
+ char *m = map;
+ char *end = m + len;
+ char *p;
char s[PATH_MAX];
p = strchr(m, ':');
Index: linux-wbsd/scripts/basic/docproc.c
===================================================================
--- linux-wbsd/scripts/basic/docproc.c (revision 134)
+++ linux-wbsd/scripts/basic/docproc.c (working copy)
@@ -52,7 +52,7 @@
FILEONLY *externalfunctions;
FILEONLY *symbolsonly;
-typedef void FILELINE(char * file, signed char * line);
+typedef void FILELINE(char * file, char * line);
FILELINE * singlefunctions;
FILELINE * entity_system;
@@ -148,9 +148,9 @@
* Files are separated by tabs.
*/
void adddep(char * file) { printf("\t%s", file); }
-void adddep2(char * file, signed char * line) { line = line; adddep(file); }
+void adddep2(char * file, char * line) { line = line; adddep(file); }
void noaction(char * line) { line = line; }
-void noaction2(char * file, signed char * line) { file = file; line = line; }
+void noaction2(char * file, char * line) { file = file; line = line; }
/* Echo the line without further action */
void printline(char * line) { printf("%s", line); }
@@ -179,8 +179,8 @@
perror(real_filename);
}
while(fgets(line, MAXLINESZ, fp)) {
- signed char *p;
- signed char *e;
+ char *p;
+ char *e;
if (((p = strstr(line, "EXPORT_SYMBOL_GPL")) != 0) ||
((p = strstr(line, "EXPORT_SYMBOL")) != 0)) {
/* Skip EXPORT_SYMBOL{_GPL} */
@@ -253,7 +253,7 @@
* Call kernel-doc with the following parameters:
* kernel-doc -docbook -function function1 [-function function2]
*/
-void singfunc(char * filename, signed char * line)
+void singfunc(char * filename, char * line)
{
char *vec[200]; /* Enough for specific functions */
int i, idx = 0;
@@ -290,7 +290,7 @@
void parse_file(FILE *infile)
{
char line[MAXLINESZ];
- signed char * s;
+ char * s;
while(fgets(line, MAXLINESZ, infile)) {
if (line[0] == '!') {
s = line + 2;
Index: linux-wbsd/scripts/basic/split-include.c
===================================================================
--- linux-wbsd/scripts/basic/split-include.c (revision 134)
+++ linux-wbsd/scripts/basic/split-include.c (working copy)
@@ -104,7 +104,7 @@
/* Read config lines. */
while (fgets(line, buffer_size, fp_config))
{
- const signed char * str_config;
+ const char * str_config;
int is_same;
int itarget;
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] Fix signed char problem in scripts/basic
2005-06-22 9:02 [PATCH 1/2] Fix signed char problem in scripts/basic Pierre Ossman
@ 2005-06-22 14:42 ` Roman Zippel
2005-06-22 17:46 ` Pierre Ossman
0 siblings, 1 reply; 3+ messages in thread
From: Roman Zippel @ 2005-06-22 14:42 UTC (permalink / raw)
To: Pierre Ossman; +Cc: kbuild-devel, LKML
Hi,
On Wed, 22 Jun 2005, Pierre Ossman wrote:
> -void define_config(const char * name, int len)
> +void define_config(const void * name, int len)
Could you try to drop the remaining "signed" instead of this?
bye, Roman
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] Fix signed char problem in scripts/basic
2005-06-22 14:42 ` Roman Zippel
@ 2005-06-22 17:46 ` Pierre Ossman
0 siblings, 0 replies; 3+ messages in thread
From: Pierre Ossman @ 2005-06-22 17:46 UTC (permalink / raw)
To: Roman Zippel; +Cc: kbuild-devel, LKML
[-- Attachment #1: Type: text/plain, Size: 304 bytes --]
The signed characters in scripts are causing warnings with GCC 4 on systems with proper string functions (with char*, not signed char* as parameters). All signed strings were removed because they were all directly or indirectly used in string functions.
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
[-- Attachment #2: signed-char-basic.patch --]
[-- Type: text/x-patch, Size: 3661 bytes --]
Index: linux-wbsd/scripts/basic/fixdep.c
===================================================================
--- linux-wbsd/scripts/basic/fixdep.c (revision 134)
+++ linux-wbsd/scripts/basic/fixdep.c (working copy)
@@ -217,18 +217,18 @@
printf(" $(wildcard include/config/%s.h) \\\n", s);
}
-void parse_config_file(signed char *map, size_t len)
+void parse_config_file(char *map, size_t len)
{
int *end = (int *) (map + len);
/* start at +1, so that p can never be < map */
int *m = (int *) map + 1;
- signed char *p, *q;
+ char *p, *q;
for (; m < end; m++) {
- if (*m == INT_CONF) { p = (signed char *) m ; goto conf; }
- if (*m == INT_ONFI) { p = (signed char *) m-1; goto conf; }
- if (*m == INT_NFIG) { p = (signed char *) m-2; goto conf; }
- if (*m == INT_FIG_) { p = (signed char *) m-3; goto conf; }
+ if (*m == INT_CONF) { p = (char *) m ; goto conf; }
+ if (*m == INT_ONFI) { p = (char *) m-1; goto conf; }
+ if (*m == INT_NFIG) { p = (char *) m-2; goto conf; }
+ if (*m == INT_FIG_) { p = (char *) m-3; goto conf; }
continue;
conf:
if (p > map + len - 7)
@@ -291,9 +291,9 @@
void parse_dep_file(void *map, size_t len)
{
- signed char *m = map;
- signed char *end = m + len;
- signed char *p;
+ char *m = map;
+ char *end = m + len;
+ char *p;
char s[PATH_MAX];
p = strchr(m, ':');
Index: linux-wbsd/scripts/basic/docproc.c
===================================================================
--- linux-wbsd/scripts/basic/docproc.c (revision 134)
+++ linux-wbsd/scripts/basic/docproc.c (working copy)
@@ -52,7 +52,7 @@
FILEONLY *externalfunctions;
FILEONLY *symbolsonly;
-typedef void FILELINE(char * file, signed char * line);
+typedef void FILELINE(char * file, char * line);
FILELINE * singlefunctions;
FILELINE * entity_system;
@@ -148,9 +148,9 @@
* Files are separated by tabs.
*/
void adddep(char * file) { printf("\t%s", file); }
-void adddep2(char * file, signed char * line) { line = line; adddep(file); }
+void adddep2(char * file, char * line) { line = line; adddep(file); }
void noaction(char * line) { line = line; }
-void noaction2(char * file, signed char * line) { file = file; line = line; }
+void noaction2(char * file, char * line) { file = file; line = line; }
/* Echo the line without further action */
void printline(char * line) { printf("%s", line); }
@@ -179,8 +179,8 @@
perror(real_filename);
}
while(fgets(line, MAXLINESZ, fp)) {
- signed char *p;
- signed char *e;
+ char *p;
+ char *e;
if (((p = strstr(line, "EXPORT_SYMBOL_GPL")) != 0) ||
((p = strstr(line, "EXPORT_SYMBOL")) != 0)) {
/* Skip EXPORT_SYMBOL{_GPL} */
@@ -253,7 +253,7 @@
* Call kernel-doc with the following parameters:
* kernel-doc -docbook -function function1 [-function function2]
*/
-void singfunc(char * filename, signed char * line)
+void singfunc(char * filename, char * line)
{
char *vec[200]; /* Enough for specific functions */
int i, idx = 0;
@@ -290,7 +290,7 @@
void parse_file(FILE *infile)
{
char line[MAXLINESZ];
- signed char * s;
+ char * s;
while(fgets(line, MAXLINESZ, infile)) {
if (line[0] == '!') {
s = line + 2;
Index: linux-wbsd/scripts/basic/split-include.c
===================================================================
--- linux-wbsd/scripts/basic/split-include.c (revision 134)
+++ linux-wbsd/scripts/basic/split-include.c (working copy)
@@ -104,7 +104,7 @@
/* Read config lines. */
while (fgets(line, buffer_size, fp_config))
{
- const signed char * str_config;
+ const char * str_config;
int is_same;
int itarget;
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-06-22 17:51 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-22 9:02 [PATCH 1/2] Fix signed char problem in scripts/basic Pierre Ossman
2005-06-22 14:42 ` Roman Zippel
2005-06-22 17:46 ` Pierre Ossman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox