This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

c/727: Warning bug if -O0?



>Number:         727
>Category:       c
>Synopsis:       Warning bug if -O0?
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Nov 03 01:56:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     Eugen Dedu
>Release:        Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs  gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
>Organization:
>Environment:
Linux 2.2.14-5
i686
>Description:
gcc simply does not print some warnings when not optimizing.

The code below was compiled with:
gcc -Wall test.c

Here is the output of the compiler:
eminescu:~/work$ gcc -Wall test.c -O0
eminescu:~/work$ gcc -Wall test.c -O1
test.c: In function `main':
test.c:6: warning: `type2' might be used uninitialized in this function
eminescu:~/work$ gcc -Wall test.c -O2
test.c: In function `main':
test.c:6: warning: `type2' might be used uninitialized in this function
eminescu:~/work$ gcc -Wall test.c -O3
test.c: In function `main':
test.c:6: warning: `type2' might be used uninitialized in this function

Ok, so the problem is why did not gcc print the warning when compiling
without optimization?

Thanks,
Eugen
>How-To-Repeat:
#include <stdio.h>

int main (void)
{
  int type;
  int type2;
  for (type=0 ; type<10 ; type++)
    type2++;
  printf ("%d\n", type2);
  return 0;
}
>Fix:
Use optimization.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="test.i"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.i"

IyAxICJ0ZXN0LmMiCiMgMSAiL3Vzci9pbmNsdWRlL3N0ZGlvLmgiIDEgMwogCgoKCgoKCgoKCgoK
CgoKCgoKIAoKCgoKCgoKIyAxICIvdXNyL2luY2x1ZGUvZmVhdHVyZXMuaCIgMSAzCiAKCgoKCgoK
CgoKCgoKCgoKCgoKCgogCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK
CgoKCgoKCgoKCgoKCgoKCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKIAoKCgoKCiAKCgoKIAoKCgoK
CgoKIAojIDEzOCAiL3Vzci9pbmNsdWRlL2ZlYXR1cmVzLmgiIDMKCgogCgoKCgoKCgoKCiAKCgoK
CgogCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMgMTk2ICIvdXNyL2luY2x1ZGUvZmVhdHVy
ZXMuaCIgMwoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKIAoKCgogCgoKCgoKCgoK
IAoKCgoKIAoKIyAxICIvdXNyL2luY2x1ZGUvc3lzL2NkZWZzLmgiIDEgMwogCgoKCgoKCgoKCgoK
CgoKCgoKCgoKIAoKCgoKIAoKCgoKCiAKCgoKCgoKCgogCgoKCgojIDcxICIvdXNyL2luY2x1ZGUv
c3lzL2NkZWZzLmgiIDMKCgogCgoKCgoKCgogCgoKCiMgMTAzICIvdXNyL2luY2x1ZGUvc3lzL2Nk
ZWZzLmgiIDMKCgoKIAoKCgoKCgoKCiAKCgoKCgoKCgoKCgoKCgoKIAoKCgoKCgoKCiAKCgoKCgoK
CgogCgoKCgoKCgoKCiAKCgoKCgoKCiMgMjUwICIvdXNyL2luY2x1ZGUvZmVhdHVyZXMuaCIgMiAz
CgoKIAoKCgoKCgoKCiAKCgoKCgogCgogCgoKCgoKCgoKIyAxICIvdXNyL2luY2x1ZGUvZ251L3N0
dWJzLmgiIDEgMwogCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKIyAyNzgg
Ii91c3IvaW5jbHVkZS9mZWF0dXJlcy5oIiAyIDMKCgoKCiMgMjcgIi91c3IvaW5jbHVkZS9zdGRp
by5oIiAyIDMKCgogCgoKCiMgMSAiL3Vzci9saWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9l
Z2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRkZWYuaCIgMSAzCgoKCgoKCiAKCgojIDE5ICIvdXNyL2xp
Yi9nY2MtbGliL2kzODYtcmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0ZGRlZi5o
IiAzCgoKCiAKCgogCgoKCgoKIAoKCiMgNjEgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQt
bGludXgvZWdjcy0yLjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgogCgoKCgoKIAoKCgoKCgoK
CgoKCgoKCgoKCgogCgoKCgoKIAoKIAoKIyAxMzEgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRo
YXQtbGludXgvZWdjcy0yLjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgogCgogCgoKCgoKCgoK
CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgp0eXBlZGVmIHVuc2lnbmVkIGludCBzaXplX3Q7CgoK
CgoKCgoKCgoKCgoKCgoKCgoKCgogCgoKCgogCgojIDI3MSAiL3Vzci9saWIvZ2NjLWxpYi9pMzg2
LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRkZWYuaCIgMwoKCiMgMjgzICIv
dXNyL2xpYi9nY2MtbGliL2kzODYtcmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0
ZGRlZi5oIiAzCgoKIAoKIAoKIyAzMTcgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGlu
dXgvZWdjcy0yLjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgoKCiAKCgoKCgoKCgoKCgoKCgoK
CgoKCgoKIyAzMyAiL3Vzci9pbmNsdWRlL3N0ZGlvLmgiIDIgMwoKCgoKCiMgMSAiL3Vzci9saWIv
Z2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRhcmcuaCIg
MSAzCiAKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK
CgoKCgoKCgoKCiAKCgoKCgoKdHlwZWRlZiB2b2lkICpfX2dudWNfdmFfbGlzdDsKCgoKIAoKIyAx
MTYgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgvZWdjcy0yLjkxLjY2L2luY2x1
ZGUvc3RkYXJnLmgiIDMKCgoKCgoKCgoKCgoKCgoKCgoKCiMgMjAyICIvdXNyL2xpYi9nY2MtbGli
L2kzODYtcmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0ZGFyZy5oIiAzCgoKCgoj
IDM4ICIvdXNyL2luY2x1ZGUvc3RkaW8uaCIgMiAzCgoKIyAxICIvdXNyL2luY2x1ZGUvYml0cy90
eXBlcy5oIiAxIDMKIAoKCgoKCgoKCgoKCgoKCgoKCiAKCgoKCgoKCgoKIyAxICIvdXNyL2xpYi9n
Y2MtbGliL2kzODYtcmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0ZGRlZi5oIiAx
IDMKCgoKCgoKIAoKCiMgMTkgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgvZWdj
cy0yLjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgoKIAoKCiAKCgoKCgogCgoKIyA2MSAiL3Vz
ci9saWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRk
ZWYuaCIgMwoKCiAKCgoKCgogCgoKCgoKCgoKCgoKCgoKCgoKCiAKCgoKCgogCgogCgojIDEzMSAi
L3Vzci9saWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9z
dGRkZWYuaCIgMwoKCiAKCiAKCgojIDE4OCAiL3Vzci9saWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1s
aW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRkZWYuaCIgMwoKCgoKCiAKCgoKCiAKCiMgMjcx
ICIvdXNyL2xpYi9nY2MtbGliL2kzODYtcmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRl
L3N0ZGRlZi5oIiAzCgoKIyAyODMgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgv
ZWdjcy0yLjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgogCgogCgojIDMxNyAiL3Vzci9saWIv
Z2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRkZWYuaCIg
MwoKCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgojIDI5ICIvdXNyL2luY2x1ZGUvYml0cy90eXBl
cy5oIiAyIDMKCgogCnR5cGVkZWYgdW5zaWduZWQgY2hhciBfX3VfY2hhcjsKdHlwZWRlZiB1bnNp
Z25lZCBzaG9ydCBfX3Vfc2hvcnQ7CnR5cGVkZWYgdW5zaWduZWQgaW50IF9fdV9pbnQ7CnR5cGVk
ZWYgdW5zaWduZWQgbG9uZyBfX3VfbG9uZzsKCl9fZXh0ZW5zaW9uX18gdHlwZWRlZiB1bnNpZ25l
ZCBsb25nIGxvbmcgaW50IF9fdV9xdWFkX3Q7Cl9fZXh0ZW5zaW9uX18gdHlwZWRlZiBsb25nIGxv
bmcgaW50IF9fcXVhZF90OwojIDQ4ICIvdXNyL2luY2x1ZGUvYml0cy90eXBlcy5oIiAzCgp0eXBl
ZGVmIHNpZ25lZCBjaGFyIF9faW50OF90Owp0eXBlZGVmIHVuc2lnbmVkIGNoYXIgX191aW50OF90
Owp0eXBlZGVmIHNpZ25lZCBzaG9ydCBpbnQgX19pbnQxNl90Owp0eXBlZGVmIHVuc2lnbmVkIHNo
b3J0IGludCBfX3VpbnQxNl90Owp0eXBlZGVmIHNpZ25lZCBpbnQgX19pbnQzMl90Owp0eXBlZGVm
IHVuc2lnbmVkIGludCBfX3VpbnQzMl90OwoKX19leHRlbnNpb25fXyB0eXBlZGVmIHNpZ25lZCBs
b25nIGxvbmcgaW50IF9faW50NjRfdDsKX19leHRlbnNpb25fXyB0eXBlZGVmIHVuc2lnbmVkIGxv
bmcgbG9uZyBpbnQgX191aW50NjRfdDsKCnR5cGVkZWYgX19xdWFkX3QgKl9fcWFkZHJfdDsKCnR5
cGVkZWYgX191X3F1YWRfdCBfX2Rldl90OwkJIAp0eXBlZGVmIF9fdV9pbnQgX191aWRfdDsJCSAK
dHlwZWRlZiBfX3VfaW50IF9fZ2lkX3Q7CQkgCnR5cGVkZWYgX191X2xvbmcgX19pbm9fdDsJCSAK
dHlwZWRlZiBfX3VfaW50IF9fbW9kZV90OwkJIAp0eXBlZGVmIF9fdV9pbnQgX19ubGlua190OyAJ
CSAKdHlwZWRlZiBsb25nIGludCBfX29mZl90OwkJIAp0eXBlZGVmIF9fcXVhZF90IF9fbG9mZl90
OwkJIAp0eXBlZGVmIGludCBfX3BpZF90OwkJCSAKdHlwZWRlZiBpbnQgX19zc2l6ZV90OwkJCSAK
dHlwZWRlZiBsb25nIGludCBfX3JsaW1fdDsJCSAKdHlwZWRlZiBfX3F1YWRfdCBfX3JsaW02NF90
OwkJIAp0eXBlZGVmIF9fdV9pbnQgX19pZF90OwkJCSAKCnR5cGVkZWYgc3RydWN0CiAgewogICAg
aW50IF9fdmFsWzJdOwogIH0gX19mc2lkX3Q7CQkJCSAKCiAKdHlwZWRlZiBpbnQgX19kYWRkcl90
OwkJCSAKdHlwZWRlZiBjaGFyICpfX2NhZGRyX3Q7CnR5cGVkZWYgbG9uZyBpbnQgX190aW1lX3Q7
CnR5cGVkZWYgbG9uZyBpbnQgX19zd2Jsa190OwkJIAoMCnR5cGVkZWYgbG9uZyBpbnQgX19jbG9j
a190OwoKIAp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgaW50IF9fZmRfbWFzazsKCiAKCgogCgoKCgog
CnR5cGVkZWYgc3RydWN0CiAgewogICAgIAoKCgoKCiAgICBfX2ZkX21hc2sgX19mZHNfYml0c1sx
MDI0ICAvICg4ICogc2l6ZW9mIChfX2ZkX21hc2spKSBdOwoKCiAgfSBfX2ZkX3NldDsKCgp0eXBl
ZGVmIGludCBfX2tleV90OwoKIAp0eXBlZGVmIHVuc2lnbmVkIHNob3J0IGludCBfX2lwY19waWRf
dDsKCgogCgogCnR5cGVkZWYgbG9uZyBpbnQgX19ibGtjbnRfdDsKdHlwZWRlZiBfX3F1YWRfdCBf
X2Jsa2NudDY0X3Q7CgogCnR5cGVkZWYgX191X2xvbmcgX19mc2Jsa2NudF90Owp0eXBlZGVmIF9f
dV9xdWFkX3QgX19mc2Jsa2NudDY0X3Q7CgogCnR5cGVkZWYgX191X2xvbmcgX19mc2ZpbGNudF90
Owp0eXBlZGVmIF9fdV9xdWFkX3QgX19mc2ZpbGNudDY0X3Q7CgogCnR5cGVkZWYgX191X2xvbmcg
X19pbm82NF90OwoKIAp0eXBlZGVmIF9fbG9mZl90IF9fb2ZmNjRfdDsKCiAKdHlwZWRlZiBsb25n
IGludCBfX3Rfc2NhbGFyX3Q7CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBpbnQgX190X3VzY2FsYXJf
dDsKCiAKdHlwZWRlZiBpbnQgX19pbnRwdHJfdDsKCgogCgoKCgoKIyA0MCAiL3Vzci9pbmNsdWRl
L3N0ZGlvLmgiIDIgMwoKCgoKCgoKIAp0eXBlZGVmIHN0cnVjdCBfSU9fRklMRSBGSUxFOwoKCgoK
CgoKCiMgMSAiL3Vzci9pbmNsdWRlL2xpYmlvLmgiIDEgMwogCgoKCgoKCgoKCgoKCgoKCgoKCgoK
CgoKCgoKCgojIDEgIi91c3IvaW5jbHVkZS9fR19jb25maWcuaCIgMSAzCiAKCgoKCgogCgoKCgoK
CiMgMSAiL3Vzci9saWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5j
bHVkZS9zdGRkZWYuaCIgMSAzCgoKCgoKCiAKCgojIDE5ICIvdXNyL2xpYi9nY2MtbGliL2kzODYt
cmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0ZGRlZi5oIiAzCgoKCiAKCgogCgoK
CgoKIAoKCiMgNjEgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgvZWdjcy0yLjkx
LjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgogCgoKCgoKIAoKCgoKCgoKCgoKCgoKCgoKCgogCgoK
CgoKIAoKIAoKIyAxMzEgIi91c3IvbGliL2djYy1saWIvaTM4Ni1yZWRoYXQtbGludXgvZWdjcy0y
LjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgogCgogCgoKIyAxODggIi91c3IvbGliL2djYy1s
aWIvaTM4Ni1yZWRoYXQtbGludXgvZWdjcy0yLjkxLjY2L2luY2x1ZGUvc3RkZGVmLmgiIDMKCgoK
CgogCgoKCgogCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKIAoKCgoKCgoKCgoKCgoKCgoK
CgoKCgoKCgoKCnR5cGVkZWYgbG9uZyBpbnQgd2NoYXJfdDsKCgoKCgoKCgoKCgoKCgoKCgoKCgoK
CgoKdHlwZWRlZiB1bnNpZ25lZCBpbnQgIHdpbnRfdDsKCgoKCiAKCiAKCiMgMzE3ICIvdXNyL2xp
Yi9nY2MtbGliL2kzODYtcmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0ZGRlZi5o
IiAzCgoKCgogCgoKCgoKCgoKCgoKCgoKCgoKCgoKCiMgMTQgIi91c3IvaW5jbHVkZS9fR19jb25m
aWcuaCIgMiAzCgoKCgoKCgoKCgoKCgoKCgoKCgoKCnR5cGVkZWYgaW50IF9HX2ludDE2X3QgX19h
dHRyaWJ1dGVfXyAoKF9fbW9kZV9fIChfX0hJX18pKSk7CnR5cGVkZWYgaW50IF9HX2ludDMyX3Qg
X19hdHRyaWJ1dGVfXyAoKF9fbW9kZV9fIChfX1NJX18pKSk7CnR5cGVkZWYgdW5zaWduZWQgaW50
IF9HX3VpbnQxNl90IF9fYXR0cmlidXRlX18gKChfX21vZGVfXyAoX19ISV9fKSkpOwp0eXBlZGVm
IHVuc2lnbmVkIGludCBfR191aW50MzJfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9fU0lf
XykpKTsKCgoKCiAKCgoKCgoKCgoKCgoKCgoKCgoKIAoKCgoKIAoKCgoKCgoKCgoKCgoKCiMgMzAg
Ii91c3IvaW5jbHVkZS9saWJpby5oIiAyIDMKCgoKCgoKCgoKCgoKCgoKCiAKCiMgMSAiL3Vzci9s
aWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIuOTEuNjYvaW5jbHVkZS9zdGRhcmcu
aCIgMSAzCiAKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK
CgoKCgoKCgoKCgoKCiAKCgoKCgoKCgoKCiAKCiMgMTE2ICIvdXNyL2xpYi9nY2MtbGliL2kzODYt
cmVkaGF0LWxpbnV4L2VnY3MtMi45MS42Ni9pbmNsdWRlL3N0ZGFyZy5oIiAzCgoKCgoKCgoKCgoK
CgoKCgoKCgojIDIwMiAiL3Vzci9saWIvZ2NjLWxpYi9pMzg2LXJlZGhhdC1saW51eC9lZ2NzLTIu
OTEuNjYvaW5jbHVkZS9zdGRhcmcuaCIgMwoKCgoKIyA0OCAiL3Vzci9pbmNsdWRlL2xpYmlvLmgi
IDIgMwoKCgoKCgoKIyA2NyAiL3Vzci9pbmNsdWRlL2xpYmlvLmgiIDMKCgogCgoKCgoKCgoKCgoK
CgoKCgoKIyA5OCAiL3Vzci9pbmNsdWRlL2xpYmlvLmgiIDMKCgoKCgoKCgoKCgogCgoKCgoKCgoK
CgoKCgoKCgoKCgoKCgoKCiAKCgoKCgoKCgoKCgoKCgoKCgoKCnN0cnVjdCBfSU9fanVtcF90OyAg
c3RydWN0IF9JT19GSUxFOwoKIAoKCgoKCgoKdHlwZWRlZiB2b2lkIF9JT19sb2NrX3Q7CgoKCiAK
CnN0cnVjdCBfSU9fbWFya2VyIHsKICBzdHJ1Y3QgX0lPX21hcmtlciAqX25leHQ7CiAgc3RydWN0
IF9JT19GSUxFICpfc2J1ZjsKICAgCgogICAKICBpbnQgX3BvczsKIyAxODYgIi91c3IvaW5jbHVk
ZS9saWJpby5oIiAzCgp9OwoKc3RydWN0IF9JT19GSUxFIHsKICBpbnQgX2ZsYWdzOwkJIAoKCiAg
IAogICAKICBjaGFyKiBfSU9fcmVhZF9wdHI7CSAKICBjaGFyKiBfSU9fcmVhZF9lbmQ7CSAKICBj
aGFyKiBfSU9fcmVhZF9iYXNlOwkgCiAgY2hhciogX0lPX3dyaXRlX2Jhc2U7CSAKICBjaGFyKiBf
SU9fd3JpdGVfcHRyOwkgCiAgY2hhciogX0lPX3dyaXRlX2VuZDsJIAogIGNoYXIqIF9JT19idWZf
YmFzZTsJIAogIGNoYXIqIF9JT19idWZfZW5kOwkgCiAgIAogIGNoYXIgKl9JT19zYXZlX2Jhc2U7
ICAKICBjaGFyICpfSU9fYmFja3VwX2Jhc2U7ICAgCiAgY2hhciAqX0lPX3NhdmVfZW5kOyAgCgog
IHN0cnVjdCBfSU9fbWFya2VyICpfbWFya2VyczsKCiAgc3RydWN0IF9JT19GSUxFICpfY2hhaW47
CgogIGludCBfZmlsZW5vOwogIGludCBfYmxrc2l6ZTsKICBfX29mZl90ICAgX29sZF9vZmZzZXQ7
ICAKCgogICAKICB1bnNpZ25lZCBzaG9ydCBfY3VyX2NvbHVtbjsKICBzaWduZWQgY2hhciBfdnRh
YmxlX29mZnNldDsKICBjaGFyIF9zaG9ydGJ1ZlsxXTsKCiAgIAoKICBfSU9fbG9ja190ICpfbG9j
azsKCgoKCgoKCgogIF9fb2ZmNjRfdCAgIF9vZmZzZXQ7CiAgIAogIGludCBfdW51c2VkMlsxNl07
Cgp9OwoKCnR5cGVkZWYgc3RydWN0IF9JT19GSUxFIF9JT19GSUxFOwoKCnN0cnVjdCBfSU9fRklM
RV9wbHVzOwpleHRlcm4gc3RydWN0IF9JT19GSUxFX3BsdXMgX0lPXzJfMV9zdGRpbl87CmV4dGVy
biBzdHJ1Y3QgX0lPX0ZJTEVfcGx1cyBfSU9fMl8xX3N0ZG91dF87CmV4dGVybiBzdHJ1Y3QgX0lP
X0ZJTEVfcGx1cyBfSU9fMl8xX3N0ZGVycl87CgoKCgoKCgoKCgoKIAoKIAoKdHlwZWRlZiBfX3Nz
aXplX3QgX19pb19yZWFkX2ZuICAodm9pZCAqICBfX2Nvb2tpZSwgY2hhciAqX19idWYsCgkJCQkg
ICAgICAgc2l6ZV90IF9fbmJ5dGVzKSAgOwoKIAoKCgoKCnR5cGVkZWYgX19zc2l6ZV90IF9faW9f
d3JpdGVfZm4gICh2b2lkICogIF9fY29va2llLCBfX2NvbnN0IGNoYXIgKl9fYnVmLAoJCQkJICAg
ICAgc2l6ZV90IF9fbikgIDsKCiAKCgoKCgp0eXBlZGVmIGludCBfX2lvX3NlZWtfZm4gICh2b2lk
ICogIF9fY29va2llLCBfX29mZl90ICAgX19wb3MsIGludCBfX3cpICA7CgogCnR5cGVkZWYgaW50
IF9faW9fY2xvc2VfZm4gICh2b2lkICogIF9fY29va2llKSAgOwoKCiMgMzExICIvdXNyL2luY2x1
ZGUvbGliaW8uaCIgMwoKCgoKCgoKZXh0ZXJuIGludCBfX3VuZGVyZmxvdyAgKF9JT19GSUxFICop
ICAgIDsKZXh0ZXJuIGludCBfX3VmbG93ICAoX0lPX0ZJTEUgKikgICAgOwpleHRlcm4gaW50IF9f
b3ZlcmZsb3cgIChfSU9fRklMRSAqLCBpbnQpICAgIDsKCgoKCgoKCgoKCgoKCgoKCmV4dGVybiBp
bnQgX0lPX2dldGMgIChfSU9fRklMRSAqX19mcCkgICAgOwpleHRlcm4gaW50IF9JT19wdXRjICAo
aW50IF9fYywgX0lPX0ZJTEUgKl9fZnApICAgIDsKZXh0ZXJuIGludCBfSU9fZmVvZiAgKF9JT19G
SUxFICpfX2ZwKSAgICA7CmV4dGVybiBpbnQgX0lPX2ZlcnJvciAgKF9JT19GSUxFICpfX2ZwKSAg
ICA7CgpleHRlcm4gaW50IF9JT19wZWVrY19sb2NrZWQgIChfSU9fRklMRSAqX19mcCkgICAgOwoK
IAoKCgpleHRlcm4gdm9pZCBfSU9fZmxvY2tmaWxlICAoX0lPX0ZJTEUgKikgICAgOwpleHRlcm4g
dm9pZCBfSU9fZnVubG9ja2ZpbGUgIChfSU9fRklMRSAqKSAgICA7CmV4dGVybiBpbnQgX0lPX2Z0
cnlsb2NrZmlsZSAgKF9JT19GSUxFICopICAgIDsKCgoKCgoKCgoKCgoKZXh0ZXJuIGludCBfSU9f
dmZzY2FuZiAgKF9JT19GSUxFICogICwgY29uc3QgY2hhciAqICAsCgkJCSAgICAgX19nbnVjX3Zh
X2xpc3QgLCBpbnQgKiAgKSAgICA7CmV4dGVybiBpbnQgX0lPX3ZmcHJpbnRmICAoX0lPX0ZJTEUg
KiAgLCBjb25zdCBjaGFyICogICwKCQkJICAgICAgX19nbnVjX3ZhX2xpc3QgKSAgICA7CmV4dGVy
biBfX3NzaXplX3QgICBfSU9fcGFkbiAgKF9JT19GSUxFICosIGludCwgX19zc2l6ZV90ICApICAg
IDsKZXh0ZXJuIHNpemVfdCAgIF9JT19zZ2V0biAgKF9JT19GSUxFICosIHZvaWQgKiwgc2l6ZV90
ICApICAgIDsKCmV4dGVybiBfX29mZjY0X3QgICBfSU9fc2Vla29mZiAgKF9JT19GSUxFICosIF9f
b2ZmNjRfdCAgLCBpbnQsIGludCkgICAgOwpleHRlcm4gX19vZmY2NF90ICAgX0lPX3NlZWtwb3Mg
IChfSU9fRklMRSAqLCBfX29mZjY0X3QgICwgaW50KSAgICA7CgpleHRlcm4gdm9pZCBfSU9fZnJl
ZV9iYWNrdXBfYXJlYSAgKF9JT19GSUxFICopICAgIDsKCgoKCgoKIyA1NyAiL3Vzci9pbmNsdWRl
L3N0ZGlvLmgiIDIgMwoKCiAKCnR5cGVkZWYgX19vZmZfdCAgZnBvc190OwoKCgoKCgoKIAoKCgoK
CiAKCgoKCgogCgoKCgoKCiAKCgoKCgoKCiAKCgoKCiAKCgoKCgoKCgojIDEgIi91c3IvaW5jbHVk
ZS9iaXRzL3N0ZGlvX2xpbS5oIiAxIDMKIAoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoK
CgoKCgojIDExMCAiL3Vzci9pbmNsdWRlL3N0ZGlvLmgiIDIgMwoKCgogCmV4dGVybiBGSUxFICpz
dGRpbjsJCSAKZXh0ZXJuIEZJTEUgKnN0ZG91dDsJCSAKZXh0ZXJuIEZJTEUgKnN0ZGVycjsJCSAK
IAoKCgoKCiAKZXh0ZXJuIGludCByZW1vdmUgIChfX2NvbnN0IGNoYXIgKl9fZmlsZW5hbWUpICAg
IDsKIApleHRlcm4gaW50IHJlbmFtZSAgKF9fY29uc3QgY2hhciAqX19vbGQsIF9fY29uc3QgY2hh
ciAqX19uZXcpICAgIDsKCgogCgpleHRlcm4gRklMRSAqdG1wZmlsZSAgKHZvaWQpICAgIDsKCgoK
CgoKCgoKCiAKZXh0ZXJuIGNoYXIgKnRtcG5hbSAgKGNoYXIgKl9fcykgICAgOwoKCiAKCmV4dGVy
biBjaGFyICp0bXBuYW1fciAgKGNoYXIgKl9fcykgICAgOwoKCgoKIAoKCgoKCgpleHRlcm4gY2hh
ciAqdGVtcG5hbSAgKF9fY29uc3QgY2hhciAqX19kaXIsIF9fY29uc3QgY2hhciAqX19wZngpICAg
IDsKCgoKIApleHRlcm4gaW50IGZjbG9zZSAgKEZJTEUgKl9fc3RyZWFtKSAgICA7CiAKZXh0ZXJu
IGludCBmZmx1c2ggIChGSUxFICpfX3N0cmVhbSkgICAgOwoKCiAKZXh0ZXJuIGludCBmZmx1c2hf
dW5sb2NrZWQgIChGSUxFICpfX3N0cmVhbSkgICAgOwoKCgoKCgoKCgogCmV4dGVybiBGSUxFICpm
b3BlbiAgKF9fY29uc3QgY2hhciAqICAgX19maWxlbmFtZSwKCQkJIF9fY29uc3QgY2hhciAqICAg
X19tb2RlcykgICAgOwogCmV4dGVybiBGSUxFICpmcmVvcGVuICAoX19jb25zdCBjaGFyICogICBf
X2ZpbGVuYW1lLAoJCQkgICBfX2NvbnN0IGNoYXIgKiAgIF9fbW9kZXMsCgkJCSAgIEZJTEUgKiAg
IF9fc3RyZWFtKSAgICA7CiMgMjAxICIvdXNyL2luY2x1ZGUvc3RkaW8uaCIgMwoKCgoKCgoKCgoK
IApleHRlcm4gRklMRSAqZmRvcGVuICAoaW50IF9fZmQsIF9fY29uc3QgY2hhciAqX19tb2Rlcykg
ICAgOwoKCiMgMjI3ICIvdXNyL2luY2x1ZGUvc3RkaW8uaCIgMwoKCgogCgpleHRlcm4gdm9pZCBz
ZXRidWYgIChGSUxFICogICBfX3N0cmVhbSwgY2hhciAqICAgX19idWYpICAgIDsKIAoKCmV4dGVy
biBpbnQgc2V0dmJ1ZiAgKEZJTEUgKiAgIF9fc3RyZWFtLCBjaGFyICogICBfX2J1ZiwKCQkJIGlu
dCBfX21vZGVzLCBzaXplX3QgX19uKSAgICA7CgoKIAoKZXh0ZXJuIHZvaWQgc2V0YnVmZmVyICAo
RklMRSAqICAgX19zdHJlYW0sIGNoYXIgKiAgIF9fYnVmLAoJCQkgICAgc2l6ZV90IF9fc2l6ZSkg
ICAgOwoKIApleHRlcm4gdm9pZCBzZXRsaW5lYnVmICAoRklMRSAqX19zdHJlYW0pICAgIDsKCgoK
IApleHRlcm4gaW50IGZwcmludGYgIChGSUxFICogICBfX3N0cmVhbSwKCQkJIF9fY29uc3QgY2hh
ciAqICAgX19mb3JtYXQsIC4uLikgICAgOwogCmV4dGVybiBpbnQgcHJpbnRmICAoX19jb25zdCBj
aGFyICogICBfX2Zvcm1hdCwgLi4uKSAgICA7CiAKZXh0ZXJuIGludCBzcHJpbnRmICAoY2hhciAq
ICAgX19zLAoJCQkgX19jb25zdCBjaGFyICogICBfX2Zvcm1hdCwgLi4uKSAgICA7CgogCmV4dGVy
biBpbnQgdmZwcmludGYgIChGSUxFICogICBfX3MsCgkJCSAgX19jb25zdCBjaGFyICogICBfX2Zv
cm1hdCwKCQkJICBfX2dudWNfdmFfbGlzdCAgX19hcmcpICAgIDsKIApleHRlcm4gaW50IHZwcmlu
dGYgIChfX2NvbnN0IGNoYXIgKiAgIF9fZm9ybWF0LAoJCQkgX19nbnVjX3ZhX2xpc3QgIF9fYXJn
KSAgICA7CiAKZXh0ZXJuIGludCB2c3ByaW50ZiAgKGNoYXIgKiAgIF9fcywKCQkJICBfX2NvbnN0
IGNoYXIgKiAgIF9fZm9ybWF0LAoJCQkgIF9fZ251Y192YV9saXN0ICBfX2FyZykgICAgOwoKCiAK
ZXh0ZXJuIGludCBzbnByaW50ZiAgKGNoYXIgKiAgIF9fcywgc2l6ZV90IF9fbWF4bGVuLAoJCQkg
IF9fY29uc3QgY2hhciAqICAgX19mb3JtYXQsIC4uLikgICAgCiAgICAgX19hdHRyaWJ1dGVfXyAo
KF9fZm9ybWF0X18gKF9fcHJpbnRmX18sIDMsIDQpKSk7CgpleHRlcm4gaW50IF9fdnNucHJpbnRm
ICAoY2hhciAqICAgX19zLCBzaXplX3QgX19tYXhsZW4sCgkJCSAgICAgX19jb25zdCBjaGFyICog
ICBfX2Zvcm1hdCwKCQkJICAgICBfX2dudWNfdmFfbGlzdCAgX19hcmcpICAgIAogICAgIF9fYXR0
cmlidXRlX18gKChfX2Zvcm1hdF9fIChfX3ByaW50Zl9fLCAzLCAwKSkpOwpleHRlcm4gaW50IHZz
bnByaW50ZiAgKGNoYXIgKiAgIF9fcywgc2l6ZV90IF9fbWF4bGVuLAoJCQkgICBfX2NvbnN0IGNo
YXIgKiAgIF9fZm9ybWF0LAoJCQkgICBfX2dudWNfdmFfbGlzdCAgX19hcmcpICAgIAogICAgIF9f
YXR0cmlidXRlX18gKChfX2Zvcm1hdF9fIChfX3ByaW50Zl9fLCAzLCAwKSkpOwoKCiMgMzA2ICIv
dXNyL2luY2x1ZGUvc3RkaW8uaCIgMwoKCgogCmV4dGVybiBpbnQgZnNjYW5mICAoRklMRSAqICAg
X19zdHJlYW0sCgkJCV9fY29uc3QgY2hhciAqICAgX19mb3JtYXQsIC4uLikgICAgOwogCmV4dGVy
biBpbnQgc2NhbmYgIChfX2NvbnN0IGNoYXIgKiAgIF9fZm9ybWF0LCAuLi4pICAgIDsKIApleHRl
cm4gaW50IHNzY2FuZiAgKF9fY29uc3QgY2hhciAqICAgX19zLAoJCQlfX2NvbnN0IGNoYXIgKiAg
IF9fZm9ybWF0LCAuLi4pICAgIDsKCiMgMzM0ICIvdXNyL2luY2x1ZGUvc3RkaW8uaCIgMwoKCgog
CmV4dGVybiBpbnQgZmdldGMgIChGSUxFICpfX3N0cmVhbSkgICAgOwpleHRlcm4gaW50IGdldGMg
IChGSUxFICpfX3N0cmVhbSkgICAgOwoKIApleHRlcm4gaW50IGdldGNoYXIgICh2b2lkKSAgICA7
CgogCgoKCgogCmV4dGVybiBpbnQgZ2V0Y191bmxvY2tlZCAgKEZJTEUgKl9fc3RyZWFtKSAgICA7
CmV4dGVybiBpbnQgZ2V0Y2hhcl91bmxvY2tlZCAgKHZvaWQpICAgIDsKCgoKIApleHRlcm4gaW50
IGZnZXRjX3VubG9ja2VkICAoRklMRSAqX19zdHJlYW0pICAgIDsKCgoKIApleHRlcm4gaW50IGZw
dXRjICAoaW50IF9fYywgRklMRSAqX19zdHJlYW0pICAgIDsKZXh0ZXJuIGludCBwdXRjICAoaW50
IF9fYywgRklMRSAqX19zdHJlYW0pICAgIDsKCiAKZXh0ZXJuIGludCBwdXRjaGFyICAoaW50IF9f
YykgICAgOwoKIAoKCgoKIApleHRlcm4gaW50IGZwdXRjX3VubG9ja2VkICAoaW50IF9fYywgRklM
RSAqX19zdHJlYW0pICAgIDsKCgoKIApleHRlcm4gaW50IHB1dGNfdW5sb2NrZWQgIChpbnQgX19j
LCBGSUxFICpfX3N0cmVhbSkgICAgOwpleHRlcm4gaW50IHB1dGNoYXJfdW5sb2NrZWQgIChpbnQg
X19jKSAgICA7CgoKCgogCmV4dGVybiBpbnQgZ2V0dyAgKEZJTEUgKl9fc3RyZWFtKSAgICA7Cgog
CmV4dGVybiBpbnQgcHV0dyAgKGludCBfX3csIEZJTEUgKl9fc3RyZWFtKSAgICA7CgoKCiAKZXh0
ZXJuIGNoYXIgKmZnZXRzICAoY2hhciAqICAgX19zLCBpbnQgX19uLAoJCQkgRklMRSAqICAgX19z
dHJlYW0pICAgIDsKCgoKCgoKCiAKCmV4dGVybiBjaGFyICpnZXRzICAoY2hhciAqX19zKSAgICA7
CgoKIyA0MjQgIi91c3IvaW5jbHVkZS9zdGRpby5oIiAzCgoKCiAKZXh0ZXJuIGludCBmcHV0cyAg
KF9fY29uc3QgY2hhciAqICAgX19zLAoJCSAgICAgICBGSUxFICogICBfX3N0cmVhbSkgICAgOwoK
CgoKCgoKIApleHRlcm4gaW50IHB1dHMgIChfX2NvbnN0IGNoYXIgKl9fcykgICAgOwoKCiAKZXh0
ZXJuIGludCB1bmdldGMgIChpbnQgX19jLCBGSUxFICpfX3N0cmVhbSkgICAgOwoKCiAKZXh0ZXJu
IHNpemVfdCBmcmVhZCAgKHZvaWQgKiAgIF9fcHRyLCBzaXplX3QgX19zaXplLAoJCQkgIHNpemVf
dCBfX24sIEZJTEUgKiAgIF9fc3RyZWFtKSAgICA7CiAKZXh0ZXJuIHNpemVfdCBmd3JpdGUgIChf
X2NvbnN0IHZvaWQgKiAgIF9fcHRyLCBzaXplX3QgX19zaXplLAoJCQkgICBzaXplX3QgX19uLCBG
SUxFICogICBfX3MpICAgIDsKCgogCmV4dGVybiBzaXplX3QgZnJlYWRfdW5sb2NrZWQgICh2b2lk
ICogICBfX3B0ciwgc2l6ZV90IF9fc2l6ZSwKCQkJCSAgIHNpemVfdCBfX24sIEZJTEUgKiAgIF9f
c3RyZWFtKSAgICA7CmV4dGVybiBzaXplX3QgZndyaXRlX3VubG9ja2VkICAoX19jb25zdCB2b2lk
ICogICBfX3B0ciwKCQkJCSAgICBzaXplX3QgX19zaXplLCBzaXplX3QgX19uLAoJCQkJICAgIEZJ
TEUgKiAgIF9fc3RyZWFtKSAgICA7CgoKCiAKZXh0ZXJuIGludCBmc2VlayAgKEZJTEUgKl9fc3Ry
ZWFtLCBsb25nIGludCBfX29mZiwgaW50IF9fd2hlbmNlKSAgICA7CiAKZXh0ZXJuIGxvbmcgaW50
IGZ0ZWxsICAoRklMRSAqX19zdHJlYW0pICAgIDsKIApleHRlcm4gdm9pZCByZXdpbmQgIChGSUxF
ICpfX3N0cmVhbSkgICAgOwoKIAoKCgoKIAoKCnR5cGVkZWYgX19vZmZfdCBvZmZfdDsKCgoKCgoK
CgoKCgoKCgoKCgoKCgogCmV4dGVybiBpbnQgZmdldHBvcyAgKEZJTEUgKiAgIF9fc3RyZWFtLAoJ
CQkgZnBvc190ICogICBfX3BvcykgICAgOwogCmV4dGVybiBpbnQgZnNldHBvcyAgKEZJTEUgKl9f
c3RyZWFtLCBfX2NvbnN0IGZwb3NfdCAqX19wb3MpICAgIDsKIyA1MjMgIi91c3IvaW5jbHVkZS9z
dGRpby5oIiAzCgoKIyA1MzMgIi91c3IvaW5jbHVkZS9zdGRpby5oIiAzCgoKIApleHRlcm4gdm9p
ZCBjbGVhcmVyciAgKEZJTEUgKl9fc3RyZWFtKSAgICA7CiAKZXh0ZXJuIGludCBmZW9mICAoRklM
RSAqX19zdHJlYW0pICAgIDsKIApleHRlcm4gaW50IGZlcnJvciAgKEZJTEUgKl9fc3RyZWFtKSAg
ICA7CgoKIApleHRlcm4gdm9pZCBjbGVhcmVycl91bmxvY2tlZCAgKEZJTEUgKl9fc3RyZWFtKSAg
ICA7CmV4dGVybiBpbnQgZmVvZl91bmxvY2tlZCAgKEZJTEUgKl9fc3RyZWFtKSAgICA7CmV4dGVy
biBpbnQgZmVycm9yX3VubG9ja2VkICAoRklMRSAqX19zdHJlYW0pICAgIDsKCgoKIApleHRlcm4g
dm9pZCBwZXJyb3IgIChfX2NvbnN0IGNoYXIgKl9fcykgICAgOwoKIAoKCmV4dGVybiBpbnQgc3lz
X25lcnI7CmV4dGVybiBfX2NvbnN0IGNoYXIgKl9fY29uc3Qgc3lzX2Vycmxpc3RbXTsKCgoKCgoK
CgogCmV4dGVybiBpbnQgZmlsZW5vICAoRklMRSAqX19zdHJlYW0pICAgIDsKCgoKIApleHRlcm4g
aW50IGZpbGVub191bmxvY2tlZCAgKEZJTEUgKl9fc3RyZWFtKSAgICA7CgoKCgoKIApleHRlcm4g
RklMRSAqcG9wZW4gIChfX2NvbnN0IGNoYXIgKl9fY29tbWFuZCwgX19jb25zdCBjaGFyICpfX21v
ZGVzKSAgICA7CgogCmV4dGVybiBpbnQgcGNsb3NlICAoRklMRSAqX19zdHJlYW0pICAgIDsKCgoK
CiAKZXh0ZXJuIGNoYXIgKmN0ZXJtaWQgIChjaGFyICpfX3MpICAgIDsKCgoKCgoKCgoKIyA2MDcg
Ii91c3IvaW5jbHVkZS9zdGRpby5oIiAzCgoKCgogCgogCmV4dGVybiB2b2lkIGZsb2NrZmlsZSAg
KEZJTEUgKl9fc3RyZWFtKSAgICA7CgogCgpleHRlcm4gaW50IGZ0cnlsb2NrZmlsZSAgKEZJTEUg
Kl9fc3RyZWFtKSAgICA7CgogCmV4dGVybiB2b2lkIGZ1bmxvY2tmaWxlICAoRklMRSAqX19zdHJl
YW0pICAgIDsKCgoKCgoKCgoKCiAKCgoKCgogCgoKCgojIDEgInRlc3QuYyIgMgoKCmludCBtYWlu
ICh2b2lkKQp7CiAgaW50IHR5cGU7CiAgaW50IHR5cGUyOwogIGZvciAodHlwZT0wIDsgdHlwZTwx
MCA7IHR5cGUrKykKICAgIHR5cGUyKys7CiAgcHJpbnRmICgiJWRcbiIsIHR5cGUyKTsKICByZXR1
cm4gMDsKfQo=

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]