From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15642 invoked by alias); 27 Sep 2005 14:57:33 -0000 Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org Received: (qmail 15634 invoked by uid 22791); 27 Sep 2005 14:57:29 -0000 Received: from gate4-sandiego.nmci.navy.mil (HELO Gate4-sandiego.nmci.navy.mil) (138.163.0.44) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Tue, 27 Sep 2005 14:57:29 +0000 Received: from nawesdnims03.nmci.navy.mil by Gate4-sandiego.nmci.navy.mil via smtpd (for sourceware.org [12.107.209.250]) with ESMTP; Tue, 27 Sep 2005 14:57:28 +0000 Received: (private information removed) Received: (private information removed) Received: (private information removed) Received: (private information removed) Received: (private information removed) Content-Class: urn:content-classes:message Subject: RE: Problem with code or gcc? MIME-Version: 1.0 Date: Tue, 27 Sep 2005 14:57:00 -0000 Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=SHA1; boundary="----=_NextPart_000_005D_01C5C339.39B7DBB0" Message-ID: <40B2C613F7E8684B96E5AB2560C9CC5B0134C7EC@NAWESDNSEX01VA.nadsuswe.nads.navy.mil> From: "Kedzierski, Artur CIV NAVSURFWARCENDIV CORONA" To: X-SW-Source: 2005-09/txt/msg00186.txt.bz2 This is a multi-part message in MIME format. ------=_NextPart_000_005D_01C5C339.39B7DBB0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-length: 1622 Philippe and Ryan, thank You for your responses. One thing that I find it strange is that I can use MyStruct::CONST in other ways without a problem: MyStruct m; int a =3D m.CONST std::vector v; v.push_back(static_cast(m.CONST)); if (b =3D=3D m.CONST)=20 ... However, only when I use 'v.push_back(m.CONST)', I get a linker error. Shouldn't I get a linker error in those other cases? -----Original Message----- From: Philippe Haution [mailto:philippe_haution@yahoo.fr] Sent: Tuesday, September 27, 2005 7:13 To: Kedzierski, Artur CIV NAVSURFWARCENDIV CORONA; gcc-help@gcc.gnu.org Subject: RE: Problem with code or gcc? Hello, This is not a valid C++ code, you cannot define the value of CONST inside the struct declaration. A more correct code would be : struct MyStruct { static const int CONST; }; const int MyStruct::CONST =3D 1; Regards, PH --- "Kedzierski, Artur CIV NAVSURFWARCENDIV CORONA" a =E9crit : > Could anybody tell me if this is a valid C++ code > or > a problem with GCC? >=20 > test_prog.cc: > #include > struct MyStruct { > static const int CONST =3D 1; > }; >=20 > int main() { > std::vector l; > MyStruct z; > l.push_back(z.CONST); > } >=20 >=20 > I get an undefined reference to MyStruct::CONST > when=20 > I try to compile it. > I appreciate any help. >=20 > Artur Kedzierski >=20 =09 =09 =09=09 ________________________________________________________________________ ___=20 Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger=20 T=E9l=E9chargez cette version sur http://fr.messenger.yahoo.com ------=_NextPart_000_005D_01C5C339.39B7DBB0 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-length: 5495 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEH AQAAoIIM3jCCBBswggOEoAMCAQICASAwDQYJKoZIhvcNAQEFBQAwYTELMAkG A1UEBhMCVVMxGDAWBgNVBAoTD1UuUy4gR292ZXJubWVudDEMMAoGA1UECxMD RG9EMQwwCgYDVQQLEwNQS0kxHDAaBgNVBAMTE0RvRCBDTEFTUyAzIFJvb3Qg Q0EwHhcNMDMwMzIwMTUwMjUzWhcNMDkwMzE4MTUwMjUzWjBkMQswCQYDVQQG EwJVUzEYMBYGA1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0Qx DDAKBgNVBAsTA1BLSTEfMB0GA1UEAxMWRE9EIENMQVNTIDMgRU1BSUwgQ0Et NTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArs9GG8FYEVBIzCTd6BD/ +FyPTb+aH+cfdYTshM1SJNhuxjIKFr8Sekv422eYigX/ly71oSs9b17jFhxC YWNgQBZg9ptTjdJy6MmCuBR5D9I8zlklGgfBJQaSvss7HBVgTmlubfaCtgh3 Whi8YsezgSnhdVLbBxpAO/J0qR5l2sMCAwEAAaOCAd4wggHaMB0GA1UdDgQW BBT8EPq5amEuT7PXdMYoHmngL85U6DAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0T AQH/BAUwAwEB/zAMBgNVHSQEBTADgAEAMB8GA1UdIwQYMBaAFGycpfBcj21B jcQXO5BXwg+jzW3+MDAGA1UdIAQpMCcwCwYJYIZIAWUCAQsFMAsGCWCGSAFl AgELCTALBglghkgBZQIBCwowgYMGA1UdEgR8MHqGeGxkYXA6Ly9kcy0zLmMz cGtpLmNoYW1iLmRpc2EubWlsL2NuJTNkRG9EJTIwQ0xBU1MlMjAzJTIwUm9v dCUyMENBJTJjb3UlM2RQS0klMmNvdSUzZERvRCUyY28lM2RVLlMuJTIwR292 ZXJubWVudCUyY2MlM2RVUzCBsAYDVR0fBIGoMIGlMIGioIGfoIGchoGZbGRh cDovL2RzLTMuYzNwa2kuY2hhbWIuZGlzYS5taWwvY24lM2REb0QlMjBDTEFT UyUyMDMlMjBSb290JTIwQ0ElMmNvdSUzZFBLSSUyY291JTNkRG9EJTJjbyUz ZFUuUy4lMjBHb3Zlcm5tZW50JTJjYyUzZFVTP2NlcnRpZmljYXRlcmV2b2Nh dGlvbmxpc3Q7YmluYXJ5MA0GCSqGSIb3DQEBBQUAA4GBAKvH+EfhJOzPmz/G +TT4MKOSzweG97CS+L4tyX/ntF47FIz7pGfFA8mVWHtWygye81jG5ZklO0/g XD3VRiDscUTi4YOfh5yaBvFo04D9Sq2bIAxzPLqG4b+8cyDvldoZZS4ala6j fDeRe2go9+fomoLrTh4euT/evpPljk4YyXljMIIENjCCA5+gAwIBAgIDD8Nn MA0GCSqGSIb3DQEBBQUAMGQxCzAJBgNVBAYTAlVTMRgwFgYDVQQKEw9VLlMu IEdvdmVybm1lbnQxDDAKBgNVBAsTA0RvRDEMMAoGA1UECxMDUEtJMR8wHQYD VQQDExZET0QgQ0xBU1MgMyBFTUFJTCBDQS01MB4XDTA0MDMxNjAwMDAwMFoX DTA3MDMxNTAwMDAwMFowdzELMAkGA1UEBhMCVVMxGDAWBgNVBAoTD1UuUy4g R292ZXJubWVudDEMMAoGA1UECxMDRG9EMQwwCgYDVQQLEwNQS0kxDDAKBgNV BAsTA1VTTjEkMCIGA1UEAxMbS0VEWklFUlNLSS5BUlRVUi4xMjcxMDQ5NDAw MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC8t6taR5Ov+/phsMPdNTIV YwyaPWA6BTWkJ9o61dhqIejYdhIyUs62UOE9zWnwvhuXnhIu4EOMjY6AixvC jOy7g2+Ike6ClciHrruzwNSKQnhI7B+pFS7WkVk93YxkhLGCJlSwjdQa1Ndu WWi9lKqxL5I4pf4NLiRGX9/UAV063QIDAQABo4IB4TCCAd0wDgYDVR0PAQH/ BAQDAgUgMCUGA1UdEQQeMByBGmFydGh1ci5rZWR6aWVyc2tpQG5hdnkubWls MB8GA1UdIwQYMBaAFPwQ+rlqYS5Ps9d0xigeaeAvzlToMB0GA1UdDgQWBBQT xkviHRkwq8yuHvMtw4IkbIxRNTAWBgNVHSAEDzANMAsGCWCGSAFlAgELCTCB jwYDVR0SBIGHMIGEhoGBbGRhcDovL2VtYWlsLWRzLTMuYzNwa2kuY2hhbWIu ZGlzYS5taWwvY24lM2RET0QlMjBDTEFTUyUyMDMlMjBFTUFJTCUyMENBLTUl MmNvdSUzZFBLSSUyY291JTNkRG9EJTJjbyUzZFUuUy4lMjBHb3Zlcm5tZW50 JTJjYyUzZFVTMIG5BgNVHR8EgbEwga4wgauggaiggaWGgaJsZGFwOi8vZW1h aWwtZHMtMy5jM3BraS5jaGFtYi5kaXNhLm1pbC9jbiUzZERPRCUyMENMQVNT JTIwMyUyMEVNQUlMJTIwQ0EtNSUyY291JTNkUEtJJTJjb3UlM2REb0QlMmNv JTNkVS5TLiUyMEdvdmVybm1lbnQlMmNjJTNkVVM/Y2VydGlmaWNhdGVyZXZv Y2F0aW9ubGlzdDtiaW5hcnkwDQYJKoZIhvcNAQEFBQADgYEALloM9K3U572t sjhvaSi7ePReojtp7OI+TH+3LrxFon4n5agvtfH2fyBN+aFefgT49Dro6otB P5Gdb62GoBm/GBY8IBg3aZv/3Jllu4ONMUUDSkFGTsUv19xYDmq1Qg+JViDW NT1okMt5F1g7Jg/0KqYRoULrkZcRhAw+Wg+9MVIwggSBMIID6qADAgECAgMP w2IwDQYJKoZIhvcNAQEFBQAwZDELMAkGA1UEBhMCVVMxGDAWBgNVBAoTD1Uu Uy4gR292ZXJubWVudDEMMAoGA1UECxMDRG9EMQwwCgYDVQQLEwNQS0kxHzAd BgNVBAMTFkRPRCBDTEFTUyAzIEVNQUlMIENBLTUwHhcNMDQwMzE2MDAwMDAw WhcNMDcwMzE1MDAwMDAwWjB3MQswCQYDVQQGEwJVUzEYMBYGA1UEChMPVS5T LiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAKBgNVBAsTA1BLSTEMMAoG A1UECxMDVVNOMSQwIgYDVQQDExtLRURaSUVSU0tJLkFSVFVSLjEyNzEwNDk0 MDAwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJ5n8xVP7PSrt+CUrbrK mPOvtZ2TRavz7xg+XCoU1A6yn6LdfE/XjOPmZMen2YP9OvnVLCaZFHTFe8S3 /I3VMD0rS5noHqrndXVMBO9r9EoUyKddTo4VljEPy3wl7Rt+fiJdYE9juwy9 6huxbQ0bEWN8Pso65rttZxHyNkuRARS7AgMBAAGjggIsMIICKDAOBgNVHQ8B Af8EBAMCBsAwHwYDVR0jBBgwFoAU/BD6uWphLk+z13TGKB5p4C/OVOgwHQYD VR0OBBYEFHUTUyb9sKSaana0GUew6f0q7VbtMBYGA1UdIAQPMA0wCwYJYIZI AWUCAQsJMIGPBgNVHRIEgYcwgYSGgYFsZGFwOi8vZW1haWwtZHMtMy5jM3Br aS5jaGFtYi5kaXNhLm1pbC9jbiUzZERPRCUyMENMQVNTJTIwMyUyMEVNQUlM JTIwQ0EtNSUyY291JTNkUEtJJTJjb3UlM2REb0QlMmNvJTNkVS5TLiUyMEdv dmVybm1lbnQlMmNjJTNkVVMwgbkGA1UdHwSBsTCBrjCBq6CBqKCBpYaBomxk YXA6Ly9lbWFpbC1kcy0zLmMzcGtpLmNoYW1iLmRpc2EubWlsL2NuJTNkRE9E JTIwQ0xBU1MlMjAzJTIwRU1BSUwlMjBDQS01JTJjb3UlM2RQS0klMmNvdSUz ZERvRCUyY28lM2RVLlMuJTIwR292ZXJubWVudCUyY2MlM2RVUz9jZXJ0aWZp Y2F0ZXJldm9jYXRpb25saXN0O2JpbmFyeTApBgNVHSUEIjAgBgorBgEEAYI3 FAICBggrBgEFBQcDBAYIKwYBBQUHAwIwRQYDVR0RBD4wPIEaYXJ0aHVyLmtl ZHppZXJza2lAbmF2eS5taWygHgYKKwYBBAGCNxQCA6AQDA4xMjcxMDQ5NDAw QG1pbDANBgkqhkiG9w0BAQUFAAOBgQCMubG2tEwTM4Q84qp6kBZm2bkbEeix DaTd7XTR9lZFd8Q2wQ0xPXlbiShLaJVkkuuHBt8UF6CaOMJK1yM8aIRWRbrj XW5q749QbmMyFsdAb0z98JaFUPGgAiBiaL8iEu1Vzo7d8hnaM4Q9VUD74ADx QxwGfn1BdivMC0lg4cc8yTGCArcwggKzAgEBMGswZDELMAkGA1UEBhMCVVMx GDAWBgNVBAoTD1UuUy4gR292ZXJubWVudDEMMAoGA1UECxMDRG9EMQwwCgYD VQQLEwNQS0kxHzAdBgNVBAMTFkRPRCBDTEFTUyAzIEVNQUlMIENBLTUCAw/D YjAJBgUrDgMCGgUAoIIBojAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG CSqGSIb3DQEJBTEPFw0wNTA5MjcxNDU4MTlaMCMGCSqGSIb3DQEJBDEWBBTP qtKhiCitK7MWgiB2Fbnah8V2uzBJBgkqhkiG9w0BCQ8xPDA6MAoGCCqGSIb3 DQMHMA4GCCqGSIb3DQMCAgIAgDAHBgUrDgMCBzAHBgUrDgMCGjAKBggqhkiG 9w0CBTB6BgkrBgEEAYI3EAQxbTBrMGQxCzAJBgNVBAYTAlVTMRgwFgYDVQQK Ew9VLlMuIEdvdmVybm1lbnQxDDAKBgNVBAsTA0RvRDEMMAoGA1UECxMDUEtJ MR8wHQYDVQQDExZET0QgQ0xBU1MgMyBFTUFJTCBDQS01AgMPw2cwfAYLKoZI hvcNAQkQAgsxbaBrMGQxCzAJBgNVBAYTAlVTMRgwFgYDVQQKEw9VLlMuIEdv dmVybm1lbnQxDDAKBgNVBAsTA0RvRDEMMAoGA1UECxMDUEtJMR8wHQYDVQQD ExZET0QgQ0xBU1MgMyBFTUFJTCBDQS01AgMPw2cwDQYJKoZIhvcNAQEBBQAE gYBUi3X+iaVENOoVBhqfWAm3V4/Jtvgxbh+l8Crz0jL7OW+AX6ToimrIEcPw CrjqOIq7QYklxqeF4oziA4LnkGxEJMfJiWqtzw71VFikY5EeykDndOsOUSKG AixChIvXp8Tu1T6uD3SxTshEzNffSubsMiFl2xmDe1VgIePypdhgWAAAAAAA AA== ------=_NextPart_000_005D_01C5C339.39B7DBB0--