public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* c++/6036: gcc bug: incorrect scoping when using templates
@ 2002-03-22  3:16 Norbert.Galm
  0 siblings, 0 replies; only message in thread
From: Norbert.Galm @ 2002-03-22  3:16 UTC (permalink / raw)
  To: gcc-gnats


>Number:         6036
>Category:       c++
>Synopsis:       gcc bug: incorrect scoping when using templates
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          wrong-code
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 22 03:16:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Norbert Galm
>Release:        gcc version 2.95.3 20010315 (release)
>Organization:
>Environment:
sparc-sun-solaris2.5.1
>Description:
The use of variables within templates, which are not
declared at the definition of the template and which do not
depend on the template parameters, doesn't produce a
compiler error.
Instead variables, which are defined at the instantiation
of the template, are used and incorrect code is produced.
More details are in the attachment.
>How-To-Repeat:
template <class T>
void Print (T t)
{
	i+=5;
}

int i=3;

int main ()
{
	//int i=3;
	//for (int i=3; i<10; ++i) /* do something or not */;

	double d;
	Print(d);
	return i; // result with gcc, version 2.95.3 for unix: 8
}

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="faulty_scope.txt.bugreport.attachment"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="faulty_scope.txt.bugreport.attachment"

VGhlIGZvbGxvd2luZyB0ZXh0IHJlcG9ydHMgYSBidWcgZm9yIHRoZSBnY2MsIHZlcnNpb24gMi45
NS4zLCBvbiBhIHVuaXggc3lzdGVtLgpUaGUgY29tcGlsZXIgZ2VuZXJhdGVzIGluY29ycmVjdCBj
b2RlIChhbmQgbWVzc2FnZXMpIGR1ZSB0byBmYXVsdHkgc2NvcGluZwppbiB0aGUgY29udGV4dCBv
ZiB0ZW1wbGF0ZXMuClRoZSBmaWxlIGlzIHZlcnkgc2hvcnQgYW5kIGRvZXNuJ3QgaW5jbHVkZSBv
dGhlcnMuIFRoZXJlZm9yZSBJIGRpZG4ndCBwb3N0CnRoZSBwcmVwcm9jZXNzZWQgZmlsZS4gQ29u
c2lkZXIgdGhlIGZvbGxvd2luZyBjb2RlOgoKLS0gRmlsZSAiZnNfYS5jcHAiIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0KCnRlbXBsYXRlIDxjbGFzcyBUPgp2b2lkIFByaW50IChUIHQp
CnsKCWkrPTU7Cn0KCmludCBpPTM7CgppbnQgbWFpbiAoKQp7CgkvL2ludCBpPTM7CgkvL2ZvciAo
aW50IGk9MzsgaTwxMDsgKytpKSAvKiBkbyBzb21ldGhpbmcgb3Igbm90ICovOwoKCWRvdWJsZSBk
OwoJUHJpbnQoZCk7CglyZXR1cm4gaTsgLy8gcmVzdWx0IHdpdGggZ2NjLCB2ZXJzaW9uIDIuOTUu
MyBmb3IgdW5peDogOAp9CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLQoKVGhlIGNvbXBpbGF0aW9uIG9mICJmc19hLmNwcCIgd2l0aCBnY2MsIHZlcnNp
b24gMi45NS4zIG9uIGEgdW5peCBzeXN0ZW0sCnN1Y2NlZWRzIGluc3RlYWQgb2YgZ2l2aW5nIGEg
Y29tcGlsZSB0aW1lIGVycm9yIChgaScgaXMgbm90IGRlZmluZWQKd2l0aGluIGBQcmludCcpLiBU
aGUgcmVzdWx0aW5nIGV4ZWN1dGFibGUgcmV0dXJucyA4IGluc3RlYWQgb2YgMy4KClRoZSBjb21t
YW5kOgoKZ2NjIC12IC1zYXZlLXRlbXBzIGZzX2EuY3BwCgpUaGUgb3V0cHV0OgoKUmVhZGluZyBz
cGVjcyBmcm9tIC9zdy9sb2NhbC9saWIvZ2NjLWxpYi9zcGFyYy1zdW4tc29sYXJpczIuNS4xLzIu
OTUuMy9zcGVjcwpnY2MgdmVyc2lvbiAyLjk1LjMgMjAwMTAzMTUgKHJlbGVhc2UpCiAvc3cvbG9j
YWwvbGliL2djYy1saWIvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS8yLjk1LjMvY3BwMCAtbGFuZy1j
KysgLXYgLURfX0dOVUNfXz0yIC1EX19HTlVHX189MiAtRF9fR05VQ19NSU5PUl9fPTk1IC1EX19j
cGx1c3BsdXMgLURzcGFyYyAtRHN1biAtRHVuaXggLURfX3N2cjRfXyAtRF9fU1ZSNCAtRF9fc3Bh
cmNfXyAtRF9fc3VuX18gLURfX3VuaXhfXyAtRF9fc3ZyNF9fIC1EX19TVlI0IC1EX19zcGFyYyAt
RF9fc3VuIC1EX191bml4IC1Bc3lzdGVtKHVuaXgpIC1Bc3lzdGVtKHN2cjQpIC1EX19FWENFUFRJ
T05TIC1EX19HQ0NfTkVXX1ZBUkFSR1NfXyAtQWNwdShzcGFyYykgLUFtYWNoaW5lKHNwYXJjKSBm
c19hLmNwcCBmc19hLmlpCkdOVSBDUFAgdmVyc2lvbiAyLjk1LjMgMjAwMTAzMTUgKHJlbGVhc2Up
IChzcGFyYykKI2luY2x1ZGUgIi4uLiIgc2VhcmNoIHN0YXJ0cyBoZXJlOgojaW5jbHVkZSA8Li4u
PiBzZWFyY2ggc3RhcnRzIGhlcmU6CiAvc3cvbG9jYWwvaW5jbHVkZS9nKysKIC9zdy9sb2NhbC9p
bmNsdWRlCiAvc3cvbG9jYWwvbGliL2djYy1saWIvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS8yLjk1
LjMvLi4vLi4vLi4vLi4vc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS9pbmNsdWRlCiAvc3cvbG9jYWwv
bGliL2djYy1saWIvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS8yLjk1LjMvaW5jbHVkZQogL3Vzci9p
bmNsdWRlCkVuZCBvZiBzZWFyY2ggbGlzdC4KVGhlIGZvbGxvd2luZyBkZWZhdWx0IGRpcmVjdG9y
aWVzIGhhdmUgYmVlbiBvbWl0dGVkIGZyb20gdGhlIHNlYXJjaCBwYXRoOgpFbmQgb2Ygb21pdHRl
ZCBsaXN0LgogL3N3L2xvY2FsL2xpYi9nY2MtbGliL3NwYXJjLXN1bi1zb2xhcmlzMi41LjEvMi45
NS4zL2NjMXBsdXMgZnNfYS5paSAtcXVpZXQgLWR1bXBiYXNlIGZzX2EuY2MgLXZlcnNpb24gLW8g
ZnNfYS5zCkdOVSBDKysgdmVyc2lvbiAyLjk1LjMgMjAwMTAzMTUgKHJlbGVhc2UpIChzcGFyYy1z
dW4tc29sYXJpczIuNS4xKSBjb21waWxlZCBieSBHTlUgQyB2ZXJzaW9uIDIuOTUuMyAyMDAxMDMx
NSAocmVsZWFzZSkuCiAvc3cvbG9jYWwvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS9iaW4vYXMgLVYg
LVF5IC1zIC1vIGZzX2EubyBmc19hLnMKR05VIGFzc2VtYmxlciB2ZXJzaW9uIDIuMTAuMSAoc3Bh
cmMtc3VuLXNvbGFyaXMyLjUuMSkgdXNpbmcgQkZEIHZlcnNpb24gMi4xMC4xCiAvc3cvbG9jYWwv
bGliL2djYy1saWIvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS8yLjk1LjMvY29sbGVjdDIgLVYgLVkg
UCwvdXNyL2Njcy9saWI6L3Vzci9saWIgLVF5IC9zdy9sb2NhbC9saWIvZ2NjLWxpYi9zcGFyYy1z
dW4tc29sYXJpczIuNS4xLzIuOTUuMy9jcnQxLm8gL3N3L2xvY2FsL2xpYi9nY2MtbGliL3NwYXJj
LXN1bi1zb2xhcmlzMi41LjEvMi45NS4zL2NydGkubyAvdXNyL2Njcy9saWIvdmFsdWVzLVhhLm8g
L3N3L2xvY2FsL2xpYi9nY2MtbGliL3NwYXJjLXN1bi1zb2xhcmlzMi41LjEvMi45NS4zL2NydGJl
Z2luLm8gLUwvc3cvbG9jYWwvbGliL2djYy1saWIvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS8yLjk1
LjMgLUwvc3cvbG9jYWwvc3BhcmMtc3VuLXNvbGFyaXMyLjUuMS9saWIgLUwvdXNyL2Njcy9iaW4g
LUwvdXNyL2Njcy9saWIgLUwvc3cvbG9jYWwvbGliIGZzX2EubyAtbGdjYyAtbGMgLWxnY2MgL3N3
L2xvY2FsL2xpYi9nY2MtbGliL3NwYXJjLXN1bi1zb2xhcmlzMi41LjEvMi45NS4zL2NydGVuZC5v
IC9zdy9sb2NhbC9saWIvZ2NjLWxpYi9zcGFyYy1zdW4tc29sYXJpczIuNS4xLzIuOTUuMy9jcnRu
Lm8KR05VIGxkIHZlcnNpb24gMi4xMC4xICh3aXRoIEJGRCAyLjEwLjEpCiAgU3VwcG9ydGVkIGVt
dWxhdGlvbnM6CiAgIGVsZjMyX3NwYXJjCgoKClNvbWUgbW9yZSB0ZXN0cywgd2hpY2ggSSBoYXZl
IGRvbmU6CgpSZXBsYWNpbmcgdGhlIGdsb2JhbCBkZWZpbml0aW9uIG9mIGBpJyBieSB0aGUgbG9j
YWwgb25lIChlaXRoZXIgb3V0c2lkZQpvciBpbnNpZGUgdGhlIGBmb3InLXN0YXRlbWVudCkgcmVz
dWx0cyBpbiB0aGUgKGNvcnJlY3QpIGNvbXBpbGUgdGltZSBlcnJvci4KU28gdGhlIGZhdWx0eSBz
Y29wZSBkb2VzIG5vdCBvY2N1ciBpbiB0aGUgY2FzZSBvZiBsb2NhbCB2YXJpYWJsZXMgKHNvIGZh
ciAtIGZvcgptb3JlIGRldGFpbHMgc2VlIGJlbG93KS4gQmVsb3cgaXQgYWxzbyBiZWNvbWVzIGNs
ZWFyLCB3aHkgdGhlIGxhdHRlciB0d28gY2FzZXMKKGBmb3InLXN0YXRlbWVudCBvciBub3QpIGFy
ZSBjb25zaWRlcmVkIHNlcGFyYXRlbHkuCgpDb25zaXN0ZW50bHksIHJlcGxhY2luZyBgaSs9NTsn
IGluIGBQcmludCcgYnkgYGludCBpOycgcmVzdWx0cyBpbiBhIChmYXVsdHkpCmNvbXBpbGVyIHdh
cm5pbmcgZm9yIHRoZSBnbG9iYWwgY2FzZSwgc2F5aW5nIHRoYXQgYFByaW50OjppJyBzaGFkb3dz
IGA6OmknLgpGb3IgdGhpcywgdXNlIHRoZSBjb21waWxlciBvcHRpb24gIi1Xc2hhZG93Ii4KCi0t
IEZpbGUgImZzX2IuY3BwIiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgp0ZW1wbGF0
ZSA8Y2xhc3MgVD4Kdm9pZCBQcmludCAoVCB0KQp7CglpbnQgaTsKfQoKaW50IGk9MzsKCmludCBt
YWluICgpCnsKCS8vaW50IGk9MzsKCS8vZm9yIChpbnQgaT0zOyBpPDEwOyArK2kpIC8qIGRvIHNv
bWV0aGluZyBvciBub3QgKi87CgoJZG91YmxlIGQ7CglQcmludChkKTsKCXJldHVybiBpOwp9Cgot
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKQWdhaW4s
IHRoZSBwcm9ibGVtIGRvZXMgbm90IG9jY3VyIGZvciB0aGUgdHdvIGxvY2FsIGNhc2VzLiBBbGwg
dGhlc2UgcHJvYmxlbXMKb2NjdXIgb25seSBpbiB0aGUgY29udGV4dCBvZiB0ZW1wbGF0ZXMuIFNv
IGZhciBubyBsb2NhbCB2YXJpYWJsZSB3YXMgc2hhZG93ZWQuClRoZSBuZXh0IGV4YW1wbGUgc2hv
d3MgdGhhdCB0aGlzIG1heSBhbHNvIGhhcHBlbi4KCi0tIEZpbGUgImZzX2MuY3BwIiAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgp0ZW1wbGF0ZSA8Y2xhc3MgVD4Kdm9pZCBQcmludCAo
VCB0KQp7CglpbnQgaTsKfQoKdGVtcGxhdGUgPGNsYXNzIFQ+CnN0cnVjdCBNZW1vcnkgewoJVCBE
YXRhWzEwXTsKCXZpcnR1YWwgdm9pZCBTaG93ICgpOwp9OwoKdGVtcGxhdGUgPGNsYXNzIFQ+CnZv
aWQgTWVtb3J5PFQ+OjpTaG93ICgpCnsKCVQgdDsKCWZvciAoaW50IGk9MDsgaTwxMDsgKytpKSAv
KiBkbyBzb21ldGhpbmcgb3Igbm90ICovOwoJUHJpbnQodCk7Cn0KCmludCBtYWluICgpCnsKCU1l
bW9yeTxkb3VibGU+IG1lbTsKCXJldHVybiAwOwp9CgovLyBlbmQgb2YgZmlsZSAobGluZSAyNykK
Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpUaGUg
Y29tbWFuZAoJZ2NjIGZzX2MuY3BwIC1Xc2hhZG93CnByb2R1Y2VzCglmc19jLmNwcDogSW4gZnVu
Y3Rpb24gYHZvaWQgUHJpbnQ8ZG91YmxlPihkb3VibGUpJzoKCWZzX2MuY3BwOjE4OiAgIGluc3Rh
bnRpYXRlZCBmcm9tIGBNZW1vcnk8ZG91YmxlPjo6U2hvdygpJwoJZnNfYy5jcHA6Mjc6ICAgaW5z
dGFudGlhdGVkIGZyb20gaGVyZQoJZnNfYy5jcHA6NDogd2FybmluZzogZGVjbGFyYXRpb24gb2Yg
YGknIHNoYWRvd3MgcHJldmlvdXMgbG9jYWwKClRodXMgYFByaW50OjppJyBzaGFkb3dzIGBNZW1v
cnk6OlNob3c6OmknLCB3aGljaCBpbiBmYWN0IGlzIG5vdCB0aGUgY2FzZSBmb3IKdHdvIHJlYXNv
bnM6CiAtIEludm9raW5nIGdjYyBuZWl0aGVyIHdpdGggIi1mZm9yLXNjb3BlIiBub3Igd2l0aCAi
LWZuby1mb3Itc2NvcGUiIHNob3VsZAogICByZXN0cmljdCB0aGUgc2NvcGUgb2YgYE1lbW9yeTo6
U2hvdzo6aScgdG8gdGhlIGBmb3InIGxvb3AuIFRoaXMgaXMgYWN0dWFsbHkKICAgdGhlIGNhc2Us
IHNpbmNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBhY2Nlc3MgYGknIG91dHNpZGUgdGhlIGxvb3Au
IChUcnkgaXQuKQogLSBUaGUgb2J2aW91cyByZWFzb24gdGhhdCBgUHJpbnQnIGlzIG5vdCBpbiB0
aGUgc2NvcGUgb2YgYE1lbW9yeTo6U2hvdycuCgpTdXJwcmlzaW5nbHksIHJlcGxhY2luZyBgaW50
IGk7JyBpbiBgUHJpbnQnIGJ5IGBpKz01Oycgbm93IHJlc3VsdHMgaW4gYQpjb21waWxlIHRpbWUg
ZXJyb3IgYW5kIG5vdCBpbiBhbiBpbmNvcnJlY3QgZXhlY3V0YWJsZSBhcyBpdCB3YXMgaW4gdGhl
IGNhc2UKb2YgYSBnbG9iYWwgYGknLiBUaGUgZXhhY3QgZXJyb3IgbWVzc2FnZSBkZXBlbmRzIG9u
IHdoZXRoZXIgdGhlIG9wdGlvbgoiLWZmb3Itc2NvcGUiLCAiLWZuby1mb3Itc2NvcGUiIG9yIG5v
bmUgb2YgdGhlbSBpcyB1c2VkLgpUaGUgbGF0dGVyIGNhc2UgKG5vbmUgaXMgdXNlZCkgcmVzdWx0
cyBpbiBhbiBpbnRlcmVzdGluZyBlcnJvciBtZXNzYWdlOgoJZnNfYy5jcHA6IEluIGZ1bmN0aW9u
IGB2b2lkIFByaW50PGRvdWJsZT4oZG91YmxlKSc6Cglmc19jLmNwcDoxODogICBpbnN0YW50aWF0
ZWQgZnJvbSBgTWVtb3J5PGRvdWJsZT46OlNob3coKScKCWZzX2MuY3BwOjI3OiAgIGluc3RhbnRp
YXRlZCBmcm9tIGhlcmUKCWZzX2MuY3BwOjQ6IG5hbWUgbG9va3VwIG9mIGBpJyBjaGFuZ2VkIGZv
ciBuZXcgQU5TSSBgZm9yJyBzY29waW5nCglmc19jLmNwcDoxNzogICB1c2luZyBvYnNvbGV0ZSBi
aW5kaW5nIGF0IGBpJwoJZnNfYy5jcHA6NDogdXNlIG9mIGBhdXRvJyB2YXJpYWJsZSBmcm9tIGNv
bnRhaW5pbmcgZnVuY3Rpb24KCWZzX2MuY3BwOjE3OiAgIGBpbnQgaScgZGVjbGFyZWQgaGVyZQoK
V2hhdCBpcyBhIGNvbnRhaW5pbmcgZnVuY3Rpb24/IE5vIGZ1bmN0aW9uIGNhbiBjb250YWluIG90
aGVyIGZ1bmN0aW9ucyBpbiBDL0MrKy4KCk5vdyBiYWNrIHRvIHRoZSBjYXNlIG9mIHRoZSBkZWZp
bml0aW9uIGBpbnQgaTsnIGluIGBQcmludCc6IFRoZSBmYXVsdHkgd2FybmluZwooYFByaW50Ojpp
JyBzaGFkb3dzIGBNZW1vcnk6OlNob3c6OmknKSBkb2Vzbid0IG9jY3VyLCBpZiBhdCBsZWFzdCBv
bmUgb2YgdGhlCmZvbGxvd2luZyBpcyBzYXRpc2ZpZWQ6CiAxLiBFaXRoZXIgdGhlIGNvbXBpbGVy
IG9wdGlvbiAiLWZmb3Itc2NvcGUiIG9yIHRoZSBvcHRpb24gIi1mbm8tZm9yLXNjb3BlIgogICAg
aXMgdXNlZC4gVGhlIGxhdHRlciBpcyB0aGUgc3VycHJpc2luZyBjYXNlISEhCiAyLiBUaGUgYGZv
cicgc3RhdGVtZW50IGluIGBTaG93JyBpcyByZXBsYWNlZCBieSBgaW50IGk7Jy4gSW4gZmFjdCwg
dGhpcyBjYXNlCiAgICBpcyByZWxhdGVkIHRvIDEuCiAzLiBUaGUgY2FsbCBvZiBgUHJpbnQnIGlz
IGNvbnRhaW5lZCBpbiB0aGUgYGZvcicgc3RhdGVtZW50IChqdXN0IHJlbW92ZSB0aGUKICAgIHNl
bWljb2xvbiBhdCB0aGUgZW5kIG9mIHRoZSBsaW5lKS4KIDQuIGBTaG93JyBpcyBub24tdmlydHVh
bC4KIDUuIGBNZW0nIGlzIG5vIHRlbXBsYXRlIGNsYXNzIChyZXBsYWNlIHRoZSB0ZW1wbGF0ZSBw
YXJhbXRlciBgVCcgYnkgYGRvdWJsZScpLgogNi4gYFByaW50JyBpcyBubyB0ZW1wbGF0ZSBmdW5j
dGlvbiAocmVwbGFjZSBgVCcgYnkgYGRvdWJsZScpLgoKU28gdGhlIGZhdWx0eSB3YXJuaW5nIG9j
Y3VycyBpbiB0aGUgY2FzZSBvZiBhIGBmb3InIHN0YXRlbWVudCB3aXRoaW4gYSB2aXJ0dWFsCm1l
bWJlciBmdW5jdGlvbiBvZiBhIHRlbXBsYXRlIGNsYXNzLCBpZiBzb21lIG90aGVyIHRlbXBsYXRl
IGZ1bmN0aW9uIGlzIGNhbGxlZAooZm9sbG93aW5nIHRoZSBgZm9yJyBzdGF0ZW1lbnQpIGFuZCB0
aGUgc3RhbmRhcmQgY29tcGlsZXIgdHJlYXRtZW50IG9mCmBmb3InLWluaXQtc3RhdGVtZW50cyBp
cyB1c2VkLiBUaGVzZSBhcmUgcmF0aGVyIHNwZWNpYWwgY2lyY3Vtc3RhbmNlcy4KQnV0IEkgaGFk
IHRoZW0gaW4gbXkgY29kZSwgYmVmb3JlIEkga25ldyB0aGVzZSBjb21waWxlciBvcHRpb25zCihl
LmcuIGluIGEgbWF0cml4IGxpYnJhcnkgY29udGFpbmluZyBzZXZlcmFsIHRlbXBsYXRlIGNsYXNz
ZXMgYW5kIGZ1bmN0aW9ucykuCgpBbm90aGVyLCBhbmFsb2dvdXMgY2lyY3Vtc3RhbmNlIGZvciB0
aGlzIGZhdWx0eSB3YXJuaW5nIGlzLCB3aGVuIHRoZQpgZm9yJyBzdGF0ZW1lbnQgaXMgY29udGFp
bmVkIGluIGEgdGVtcGxhdGUgZnVuY3Rpb246CgotLSBGaWxlICJmc19kLmNwcCIgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKdGVtcGxhdGUgPGNsYXNzIFQ+CnZvaWQgUHJpbnQgKFQg
dCkKewoJaW50IGk7Cn0KCnRlbXBsYXRlIDxjbGFzcyBUPgp2b2lkIFAgKFQgdCkKewoJZm9yIChp
bnQgaT0wOyBpPDEwOyArK2kpIC8qIGRvIHNvbWV0aGluZyBvciBub3QgKi87CglQcmludCh0KTsK
fQoKaW50IG1haW4gKCkKewoJZG91YmxlIGQ7CglQKGQpOwoJcmV0dXJuIDA7Cn0KCi0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpMaWtld2lzZSwgdGhl
IHRlbXBsYXRlIGZ1bmN0aW9uIGBQcmludCcgbWF5IGJlIHJlcGxhY2VkIGJ5IHNvbWUgbWVtYmVy
IGZ1bmN0aW9uLAp3aGVuIGVpdGhlciB0aGlzIGNhbGxlZCBtZW1iZXIgZnVuY3Rpb24gb3IgdGhl
IGNvbnRhaW5pbmcgY2xhc3MgaXMgYSB0ZW1wbGF0ZS4KClRvIHN1bW1hcml6ZToKCkluIHRoZSBj
YXNlIG9mIGEgZ2xvYmFsIHZhcmlhYmxlICgiZnNfYS9iLmNwcCIpLCB0aGVyZSBpcyBhIHJlYWwg
YnVnLCB3aGljaCBoYXMKdG8gYmUgZml4ZWQgKG9yIG1heSBhbHJlYWR5IGJlIGZpeGVkKS4KSW4g
dGhlIGNhc2Ugb2YgYSBsb2NhbCB2YXJpYWJsZSwgb25lIG1pZ2h0IGFyZ3VlIHRoYXQgdXNpbmcg
Ii1mZm9yLXNjb3BlIiBpcyB0aGUKb25seSB0cnV0aCBmb3IgdGhlIGZ1dHVyZSAoaW4gZmFjdCwg
aW4gdGhlIG1lYW50aW1lIEknbSB1c2luZyBpdCBjb25zZXF1ZW50bHkpCmFuZCBvbmx5IGZhdWx0
eSB3YXJuaW5ncyBhbmQgbm8gaW5jb3JyZWN0IGNvZGUgaXMgZ2VuZXJhdGVkLiBCdXQgdGhlcmUg
aXMgYSBidWcsCndoaWNoIG1heSBoYXZlIG90aGVyIGVmZmVjdHMgbm90IHJlY29nbml6ZWQgc28g
ZmFyLgoKCk9uZSBsYXN0IGN1cmlvdXMgb2JzZXJ2YXRpb246CgpUaGUgd2FybmluZywgdGhhdCBg
UHJpbnQ6OmknIHNoYWRvd3MgYE1lbW9yeTo6U2hvdzo6aScgY29udGFpbnMgaW5mb3JtYXRpb24s
CmluIHdoaWNoIGxpbmVzIHRoZSB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyBhcmUgZG9uZS4gVGhl
c2UgbGluZXMgYXJlIGluY29ycmVjdCEKVGhlIGluc3RhbnRpYXRpb24gb2YgYE1lbW9yeTxkb3Vi
bGU+JyBpcyBub3QgaW4gbGluZSAyNyAoc2VlICJmc19jLmNwcCIpLgpIZXJlIHRoZSBjb21waWxl
ciBpbmNvcnJlY3RseSByZXBvcnRzIHRoZSBlbmQgb2YgdGhlIGZpbGUuCgpTb21ldGltZXMsIHRo
ZSBjb3JyZWN0IGxpbmVzIGJ1dCB0aGUgd3JvbmcgY29udGV4dCBpcyByZXBvcnRlZC4gSW4gdGhl
CmZvbGxvd2luZyBleGFtcGxlLCB0aGUgY29tcGlsZXIgY29tcGxhaW5zIHRoYXQgYG4nIGlzIG5v
dCBkZWNsYXJlZCBpbiBsaW5lIDgKKHRoaXMgaXMgY29ycmVjdCkgaW4gZnVuY3Rpb24gYGludCBt
YWluKCknICh0aGlzIGlzIGluY29ycmVjdCkuCgotLSBGaWxlICJmc19lLmNwcCIgLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKdGVtcGxhdGUgPGludCBuLCBjbGFzcyBUPgpzdHJ1Y3Qg
VmVjdG9yIHsKCVQgRWxlW25dOwp9OwoKdGVtcGxhdGUgPC8qaW50IG4sKi8gY2xhc3MgVD4KaW50
IG9wZXJhdG9yKiAoY29uc3QgVmVjdG9yPG4sVD4mIHYxLCBjb25zdCBWZWN0b3I8bixUPiYgdjIp
CnsKCS8qIGNhbGN1bGF0ZSBzY2FsYXIgcHJvZHVjdCAqLwoJcmV0dXJuIDA7Cn0KCmludCBtYWlu
ICgpCnsKCVZlY3RvcjwzLGludD4gdjM7CglyZXR1cm4gdjMgKiB2MzsKfQoKLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KClNvIHRoZXJlIG1heSBiZSB0
aHJlZSBkaWZmZXJlbnQgYnVnczoKIC0gVGhlIGZhdWx0eSBzY29waW5nIChhdCBsZWFzdCBmb3Ig
dGhlIGdsb2JhbCBjYXNlKS4KIC0gVGhlIHN0cmFuZ2UgYmVoYXZpb3VyIG9mIGBmb3InLXN0YXRl
bWVudHMgaW4gdGhlIGNvbnRleHQgb2YgdGVtcGxhdGVzLgogLSBUaGUgaW5jb3JyZWN0IHJlcG9y
dCBvZiBsaW5lcy9jb250ZXh0cyBpbiB0aGUgbWVzc2FnZXMuCkl0IG1heSBhbHNvIGJlIHRoYXQg
dGhlc2UgZXJyb3JzIGFyZSBkdWUgdG8gb25lIGJ1ZyBvbmx5LgoKCkJlc3QgcmVnYXJkcywKICAg
IE5vcmJlcnQgR2FsbQoK


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-03-22 11:16 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-03-22  3:16 c++/6036: gcc bug: incorrect scoping when using templates Norbert.Galm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).