Skip to content

Commit 953326c

Browse files
ukleinektorvalds
authored andcommitted
drivers/staging/telephony/ixj.c: fix warning about sequence points
In the statement j->caplist[j->caps].handle = j->caps++; there is no sequence point between the usage of j->caps on the LHS of the assignment and the incrementation on its RHS. So it's not defined in Standard C if j->caps is already incremented when used on the LHS even though the postfix ++ operator is used. To properly fix that the incrementation has to be done in a separate expression. This fixes: drivers/telephony/ixj.c: In function `add_caps': drivers/telephony/ixj.c:5930:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:5950:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:5954:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:5965:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:5976:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:5988:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:5998:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6003:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6008:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6013:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6019:38: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6026:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6031:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6036:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6041:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6049:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6057:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6065:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] drivers/telephony/ixj.c:6071:39: warning: operation on `j->caps' may be undefined [-Wsequence-point] Signed-off-by: Uwe Kleine-König <[email protected]> Cc: Lucas De Marchi <[email protected]> Cc: Greg KH <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 9710a78 commit 953326c

File tree

1 file changed

+38
-19
lines changed
  • drivers/staging/telephony

1 file changed

+38
-19
lines changed

drivers/staging/telephony/ixj.c

Lines changed: 38 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5927,7 +5927,8 @@ static void add_caps(IXJ *j)
59275927
j->caplist[j->caps].cap = PHONE_VENDOR_QUICKNET;
59285928
strcpy(j->caplist[j->caps].desc, "Quicknet Technologies, Inc. (www.quicknet.net)");
59295929
j->caplist[j->caps].captype = vendor;
5930-
j->caplist[j->caps].handle = j->caps++;
5930+
j->caplist[j->caps].handle = j->caps;
5931+
j->caps++;
59315932
j->caplist[j->caps].captype = device;
59325933
switch (j->cardtype) {
59335934
case QTI_PHONEJACK:
@@ -5947,11 +5948,13 @@ static void add_caps(IXJ *j)
59475948
break;
59485949
}
59495950
j->caplist[j->caps].cap = j->cardtype;
5950-
j->caplist[j->caps].handle = j->caps++;
5951+
j->caplist[j->caps].handle = j->caps;
5952+
j->caps++;
59515953
strcpy(j->caplist[j->caps].desc, "POTS");
59525954
j->caplist[j->caps].captype = port;
59535955
j->caplist[j->caps].cap = pots;
5954-
j->caplist[j->caps].handle = j->caps++;
5956+
j->caplist[j->caps].handle = j->caps;
5957+
j->caps++;
59555958

59565959
/* add devices that can do speaker/mic */
59575960
switch (j->cardtype) {
@@ -5962,7 +5965,8 @@ static void add_caps(IXJ *j)
59625965
strcpy(j->caplist[j->caps].desc, "SPEAKER");
59635966
j->caplist[j->caps].captype = port;
59645967
j->caplist[j->caps].cap = speaker;
5965-
j->caplist[j->caps].handle = j->caps++;
5968+
j->caplist[j->caps].handle = j->caps;
5969+
j->caps++;
59665970
default:
59675971
break;
59685972
}
@@ -5973,7 +5977,8 @@ static void add_caps(IXJ *j)
59735977
strcpy(j->caplist[j->caps].desc, "HANDSET");
59745978
j->caplist[j->caps].captype = port;
59755979
j->caplist[j->caps].cap = handset;
5976-
j->caplist[j->caps].handle = j->caps++;
5980+
j->caplist[j->caps].handle = j->caps;
5981+
j->caps++;
59775982
break;
59785983
default:
59795984
break;
@@ -5985,7 +5990,8 @@ static void add_caps(IXJ *j)
59855990
strcpy(j->caplist[j->caps].desc, "PSTN");
59865991
j->caplist[j->caps].captype = port;
59875992
j->caplist[j->caps].cap = pstn;
5988-
j->caplist[j->caps].handle = j->caps++;
5993+
j->caplist[j->caps].handle = j->caps;
5994+
j->caps++;
59895995
break;
59905996
default:
59915997
break;
@@ -5995,80 +6001,93 @@ static void add_caps(IXJ *j)
59956001
strcpy(j->caplist[j->caps].desc, "ULAW");
59966002
j->caplist[j->caps].captype = codec;
59976003
j->caplist[j->caps].cap = ULAW;
5998-
j->caplist[j->caps].handle = j->caps++;
6004+
j->caplist[j->caps].handle = j->caps;
6005+
j->caps++;
59996006

60006007
strcpy(j->caplist[j->caps].desc, "LINEAR 16 bit");
60016008
j->caplist[j->caps].captype = codec;
60026009
j->caplist[j->caps].cap = LINEAR16;
6003-
j->caplist[j->caps].handle = j->caps++;
6010+
j->caplist[j->caps].handle = j->caps;
6011+
j->caps++;
60046012

60056013
strcpy(j->caplist[j->caps].desc, "LINEAR 8 bit");
60066014
j->caplist[j->caps].captype = codec;
60076015
j->caplist[j->caps].cap = LINEAR8;
6008-
j->caplist[j->caps].handle = j->caps++;
6016+
j->caplist[j->caps].handle = j->caps;
6017+
j->caps++;
60096018

60106019
strcpy(j->caplist[j->caps].desc, "Windows Sound System");
60116020
j->caplist[j->caps].captype = codec;
60126021
j->caplist[j->caps].cap = WSS;
6013-
j->caplist[j->caps].handle = j->caps++;
6022+
j->caplist[j->caps].handle = j->caps;
6023+
j->caps++;
60146024

60156025
/* software ALAW codec, made from ULAW */
60166026
strcpy(j->caplist[j->caps].desc, "ALAW");
60176027
j->caplist[j->caps].captype = codec;
60186028
j->caplist[j->caps].cap = ALAW;
6019-
j->caplist[j->caps].handle = j->caps++;
6029+
j->caplist[j->caps].handle = j->caps;
6030+
j->caps++;
60206031

60216032
/* version 12 of the 8020 does the following codecs in a broken way */
60226033
if (j->dsp.low != 0x20 || j->ver.low != 0x12) {
60236034
strcpy(j->caplist[j->caps].desc, "G.723.1 6.3kbps");
60246035
j->caplist[j->caps].captype = codec;
60256036
j->caplist[j->caps].cap = G723_63;
6026-
j->caplist[j->caps].handle = j->caps++;
6037+
j->caplist[j->caps].handle = j->caps;
6038+
j->caps++;
60276039

60286040
strcpy(j->caplist[j->caps].desc, "G.723.1 5.3kbps");
60296041
j->caplist[j->caps].captype = codec;
60306042
j->caplist[j->caps].cap = G723_53;
6031-
j->caplist[j->caps].handle = j->caps++;
6043+
j->caplist[j->caps].handle = j->caps;
6044+
j->caps++;
60326045

60336046
strcpy(j->caplist[j->caps].desc, "TrueSpeech 4.8kbps");
60346047
j->caplist[j->caps].captype = codec;
60356048
j->caplist[j->caps].cap = TS48;
6036-
j->caplist[j->caps].handle = j->caps++;
6049+
j->caplist[j->caps].handle = j->caps;
6050+
j->caps++;
60376051

60386052
strcpy(j->caplist[j->caps].desc, "TrueSpeech 4.1kbps");
60396053
j->caplist[j->caps].captype = codec;
60406054
j->caplist[j->caps].cap = TS41;
6041-
j->caplist[j->caps].handle = j->caps++;
6055+
j->caplist[j->caps].handle = j->caps;
6056+
j->caps++;
60426057
}
60436058

60446059
/* 8020 chips can do TS8.5 native, and 8021/8022 can load it */
60456060
if (j->dsp.low == 0x20 || j->flags.ts85_loaded) {
60466061
strcpy(j->caplist[j->caps].desc, "TrueSpeech 8.5kbps");
60476062
j->caplist[j->caps].captype = codec;
60486063
j->caplist[j->caps].cap = TS85;
6049-
j->caplist[j->caps].handle = j->caps++;
6064+
j->caplist[j->caps].handle = j->caps;
6065+
j->caps++;
60506066
}
60516067

60526068
/* 8021 chips can do G728 */
60536069
if (j->dsp.low == 0x21) {
60546070
strcpy(j->caplist[j->caps].desc, "G.728 16kbps");
60556071
j->caplist[j->caps].captype = codec;
60566072
j->caplist[j->caps].cap = G728;
6057-
j->caplist[j->caps].handle = j->caps++;
6073+
j->caplist[j->caps].handle = j->caps;
6074+
j->caps++;
60586075
}
60596076

60606077
/* 8021/8022 chips can do G729 if loaded */
60616078
if (j->dsp.low != 0x20 && j->flags.g729_loaded) {
60626079
strcpy(j->caplist[j->caps].desc, "G.729A 8kbps");
60636080
j->caplist[j->caps].captype = codec;
60646081
j->caplist[j->caps].cap = G729;
6065-
j->caplist[j->caps].handle = j->caps++;
6082+
j->caplist[j->caps].handle = j->caps;
6083+
j->caps++;
60666084
}
60676085
if (j->dsp.low != 0x20 && j->flags.g729_loaded) {
60686086
strcpy(j->caplist[j->caps].desc, "G.729B 8kbps");
60696087
j->caplist[j->caps].captype = codec;
60706088
j->caplist[j->caps].cap = G729B;
6071-
j->caplist[j->caps].handle = j->caps++;
6089+
j->caplist[j->caps].handle = j->caps;
6090+
j->caps++;
60726091
}
60736092
}
60746093

0 commit comments

Comments
 (0)