Bug 7526

Summary: cpp0 core dump when _Pragma implies #pragma dependency
Product: gcc Reporter: nkoch
Component: preprocessorAssignee: Neil Booth <neil>
Status: RESOLVED FIXED    
Severity: normal CC: gcc-bugs
Priority: P3    
Version: unknown   
Target Milestone: ---   
Host: Target:
Build: Known to work:
Known to fail: Last reconfirmed:

Description nkoch 2002-08-07 08:56:01 UTC
 This is a multi-part message in MIME format.
 --------------010001080904050809000706
 Content-Type: text/plain; charset=us-ascii; format=flowed
 Content-Transfer-Encoding: 7bit
 
  >Submitter-Id:	net
  >Originator:	Norbert Koch
  >Organization:	demig Prozessautomatisierung GmbH
  >Confidential:	no
  >Synopsis:	using some complicated macros around _Pragma crashes pp0
  >Severity:	non-critical
  >Priority:	medium
  >Category:	preprocessor
  >Class: 
 	sw-bug
  >Release:	3.1.1 [FreeBSD]
  >Environment:
 System: FreeBSD ws-ew-3.demig 4.6-STABLE FreeBSD 4.6-STABLE #3: Mon Jul 
 15 16:37:49 CEST 2002 root@ws-ew-3.demig:/usr/src/sys/compile/WSEW3 i386
 
 
 	
 host: i386-portbld-freebsd4.6
 build: i386-portbld-freebsd4.6
 target: i386-portbld-freebsd4.6
 configured with: ./..//gcc-3.1.1/configure --disable-nls --with-gnu-as 
 --with-gnu-ld 
 --with-gxx-include-dir=/usr/local/lib/gcc-lib/i386-portbld-freebsd4.6/3.1.1/include/g++-v3 
 --with-system-zlib 
 --includedir=/usr/local/lib/gcc-lib/i386-portbld-freebsd4.6/3.1.1/include/Java 
 --enable-shared --prefix=/usr/local i386-portbld-freebsd4.6
  >Description:
 I wrote the following macros:
   #define GCC_PRAGMA(x) _Pragma(#x)
   #define DEPENDS_ON(x) GCC_PRAGMA (GCC dependency #x)
 It seems like the double stringification leads to some trouble.
 When running g++3.1.1 cpp0 aborts with:
   g++31: Internal error: Segmentation fault (program cpp0).
 I specified -save-temps but ii-file is empty.
 See attached cpp0 core dump (if useful)
  >How-To-Repeat:
  >Fix:
 
 --------------010001080904050809000706
 Content-Type: application/octet-stream;
  name="cpp0.core.bz2"
 Content-Transfer-Encoding: base64
 Content-Disposition: attachment;
  filename="cpp0.core.bz2"
 
 QlpoOTFBWSZTWZDAs5UAbT5/////////////////////////////////////////////4Fyc
 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
 xLOWp1axHVmQqWAhOVys137I6fb/9orsuM9+1O1ctzYU26ajH9/KZTOvcardWxjGx0fG1fIm
 vtNXvOs01b/GohFausoliU7RklnGGaMcI/60LvXI0vo0UIgNzfDHSGBd/rr5pJLtAc44TD/g
 Pnpc3wHhD2NKNtRLma0WqmzUys0WgqFzUMKQPSlLVfAw0qmtAirJTYKwQGYZF1Dfs7SkG1Ks
 GjWV3FTrlY53hkq0oBRELmCekwXUrdgM1BA2gfJtncb0IgzcrRdustiovq/aMVxZF3+t/xAM
 NJ7UrA0gHbjrCGIxZCCqH2RoJGuj2Se40oCUn5GestD0bzc3lAZiFJnG0xvMIOMjLC7yVC5V
 YEsVUBKsCsS6GVN9Zz+Nych5laUD0NVla+wyngzHY+CZy7bNZeFWrpqzXRvf1WPH10bLPOUq
 PwrxwvDCNs2f0M3jyWvh7F65Md756z2dTLGuWdP+iyPfDXtSb11ssp4RyT6SmjshhOkM6y1c
 kbRzX2+Wx7OGHC89EYx72EpESSogggg03Y2R6YXYiTNOeifLol17heVyAEoIDhDOGMgMWERx
 3E7FDC9RISZgUsiiEBI1vsxJFjeVa9V/9+oyMyjQfTaMgckXlX6Y5hI4R7xCIJEoiI/o3v3c
 Jh5Zrwrp04LuoLcwzMosNybq01m9K0idZVOa0lVg4q4nVFnWpu80kyh2hWVVZndIymGky774
 mEO43dcJUtWbxZUtZ0kFdrwEEnB4xdxB5g60jNZuknk80djoHoaY3c0HWddHsc5SA7F61XJz
 pR4XS9l3RZs2KADLHm1UIilZHqITgTu+lxz7MmcPjNrflfn3pfeVOQlC8ioPZE6Yt5CpbiG3
 h9kLXECpOkMDN/gBz1U62OzHecZ9fkPJcbifn9j1f6vT9Z1XYeeta1rWta1rWtbqL3ve973v
 e973ve973ve973ve973ve973ve973ve973ve77777775mZmZmZmZmZzwQQQQQQQQQQQQQQQG
 ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm
 ZmZmZmZmZmZmqhSvU+m3ey9R8Dne05/Rf9dT7v/Vb7777777777777/gPvvvvvvvvvvvvvvw
 GZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ3QQQQQQQQQQQQQQQfWXjxPQ/b67j/B
 931va+07br/Tdha1rWta1rWta3WXve973ve973vfeY8ePHjxtGjRo0aNGjS3x1wyeZ0el9/1
 uttOl63rdn1uPGM2bNmzZs2bNmzZs2eazNlsOZa/ZittyrTJay49O6bk6a2IEaglU3WZXKge
 yqqtUQaSqF+qyB1PXWLWC0k8RKh6tqPxJbbyEqZ+Xjc8t6s3lk9dqNLV2nk+SMD2A16ZpG4A
 jRiSP24yD4JCMjjtIWbBqWURHTI0SE+ralQkUJIEgo04QgNMjTcdmqkVDX2TBVThPzr8j4Bp
 rxniDmdNMbblS9itPc0AjBi8I3TCMaYYaIwqQQETQJtNoEqYEclMdYsHJkbaYxvNk6ExRZVr
 cqN6aAYa5rRwNeBXJW3Z9HL1Fa2UN6rH2t0WLdPXG9DO7kUdQyZ7i16IbGYLMHI42RSODs4S
 jRu0abGNjCVVMqTtQqUWZH6DFFxoctVNpv7olMpWcTGm41CRECSMBjC2Lu9gLptuj+u6QKmm
 3ZwGrwmkSjaAdmiNN3Gjl1GO1mwhDEGNDjqOVYAcNbs6c9C6d3ZkmJueDp2vNV/Xm73/t/zZ
 b9ft4vA/Dif9A9nm8X9+dxJiL4H3W/g+L/oru/h1+7+f6f9xfIzho+Pj49jGMYxmZa1rWtd1
 yrrrrrrruata1rWvi8Xbfffffffe1rWta1rWta1rWta1rWta1rbrbbbbbbbbdtlllllm222y
 yyyyyyyyyyyyxe266666667Jddddddddddddddddddddddbbbt1x233XXXXZLbbbV3rWvSta
 1rvYxjGMYxjGMYxjGMYxjGMYxjGMYxjGMYxi1rWta13sYxj3iH/ckX33333337cMMMMMMMMM
 MMML57777777777777+FWxjGMeYta7rbbbbLLLLLN+22yyyyyyyyz0FdVVVVVVVVVVVVVVXC
 rrrrrrrrrr4VllllnIyMEjtttttu/dddvr32MZvta1rWta1u/ffXfffffevVq2Rr2sYteNa8
 2Za1rWta4lrWta1rWta1rWte+xjGMYxjGMYxjGMYxjGMYxjGMYxjGMYyFjGMY1rWta1rWta1
 rY2ta1rWta1rWta1reFhhhhhhhhhhhhhhhhhhpwwwwwwvvvvvvvvvvvvvvvve5BobxsNoQ5t
 27du3bt27du3bt27du3bt27durbt27duGF2GGGG79rjDcQcCCCSIklO39x9Hbs4S7gyMjpoK
 9LkkqtaXTCNt0rQl7eP1XfSwxkYYZkMaSzoqmSrSm1ZJRWqn3IyrIlgCgoqraSi9xSNlVKMN
 ui0icbALVTQ02OE/zAPDKuARDeMOxCqkbsANQbdSOU6bbKKhTKoAcCm2OoBuEAKva6tByMgB
 FAbGFS1U8S4BRcdMg7tlUqToiYywA5JmXvT5kqnjABa08IZk0en9ZWphTIxjG7WLmgh+hjXn
 iSob5X/ywCwQxjEaEHgAw0aLL8ddW7z4Wn4rvB7mX3yFy7M1XH6bx/paJhDX91jx4/06z653
 p+0PCb58s31MVeX0j9ciMIDLKY9IZEUc+vVvUeX9/4n38bHsq/Mpt0V+7+xz76SObeOO1yBs
 TBpKcO7MIScoHDI3NH2Kn9zPHpzRHvtG/ixZv0vuKqPvWTLlu4dji9z+FOhq5n6g2Rs/IgGx
 k/j/BiA0cuDCWrLLYQz5OvVMCaBtJcE1P1+liOjSYrjj6EyDhugoGSZjYdvDrpvB4bhgXmEI
 E3rPVdgMqt67lvDY7rQQPo7M2fmG4PCryweaecCM+O2zLypjViDPQRZ0hDLBFuaiLGaGZW2M
 2bKdKqxcph6+G+1dI3XF2VrbuLqgxI21q4/OY3x4E0RfhO6/M/WrwTh9Fg2T8fimmfNNUrDP
 OxMSK2JmEUDISGhMvEU53vLHb9bjPqKr+byS/GLB27Q2d0wOzKI6jRGQPRwJJYgZtUATDfvV
 NmjPwjjfrFYY1v5b2qgP3YR19Gp/xZ9W5aMIBcp1sEhtChcEzFeW90gQQMcng7jhY7v1u3jL
 bAuAWoryQ/MU4ohICBGFGGDULgy0UgAlJlWGLwdV/XN03R0vtjC8nzGD47gOrswlZE2CxQRB
 AoYNZ0pMlDUMIRoMD77ws3DdBnlgGa0v6vZ+IpcHsJfzhls9p8/pLXK/I2BveIjQ/p6izS/W
 3iPD+6sPJ2q9uOTSN4dcyWDjpS46cSwgNVqmGkZRLDXRsM6nNXfYrf7VRnbNZBCVcap9My6J
 1AITaKwTOr3B2IOkITs17ywOMVn4kVKMzEsep1P59Bbl6O6/L+Iy32fqKXpcjxbfzGRmGkFp
 OQoKrOOkqBoEFUtqmSaxEcDIWwAEIEmMg4ijIMaBF6PXqLURPf534mZzurLadDwuHtOKweY3
 lFPFb79S/+dw07G3Sm0N37VdBZuJ3sqkE83JAUvsY2BY3bk/d5GHN0bGB7xShRsbT/fiS6+s
 JASKRw+2yr0f/0oCAi+f5He8BJ39t0uz/d9jjRjGHJorNoBMrG172eAd7MwZlUKv0/vqwbjz
 RQv3NxmDXVVREZ8O8dokH8/DUVcVvnM233P8lmsll81k6GDcLcVTOWYb1s/O3016q8zM1/F6
 ygUmCJCTaIvAYMY9KhsIRLjeOnsdEtJDU9u5wDMza9B7zp4nzNiL/CjOeq/0nc2t2VdO/kYW
 SZs/J/akVPh2/zudNaTzMZGS6nyw7vaE23e6VOkZs6eUjeamBGvjJ1Wpy8/sOBnFnt03abOb
 tZ6pXXZdWWv5rDfxaNmPTxL5sd/G9/f8ZWLzfBpfg5F7Mmq7GssvzLHHcezO14U1pDEYcTfr
 5C+S/wLZfJDKpUd2bGGYrHHdVmak8WTHzNDvZ3PZcfQu/Ue2Bj8HH0IG8pIyZ5dU3syLgiju
 42/dv7ONXtq3cSvCSfbtn1qxQ9EGlwoVlTTp5HiTlHAW07SjSHdRq6OZ/MeUby2dXV2+Ujnj
 Tlup6I9R6Ieck4vbbSIaMa1uggyqAYreFZ3Gbk4jyQr3sYp7LFkp7Ph5nn9LWadA2Z4/E3rr
 dW7XBBnCs+9oq3/nN2m/hWyrfGjNBN7rD03XoQhVrdVeFlzMKyK3hqHWeBKq27EOWtj8juvL
 1ozRo6xWcKptGqafrcmOH068wvf7cf+djq1df0+UdIzrs2x/hy1OabOJnGVvT8vGsW40dPyu
 PweO9EjqMN4rqfSHsF4B6cgeaNecykMP0PZVQfCGlPdEtUEu0uk/5V9nWrStDLzToAEV/ZMD
 GPK1MezXzINR2tsIxfWhYOMuFHquidb8Xxz7vLoexNObzL+mkDyn47OJo+PfKoNj8saplSf1
 RgpXOdfa/Dl2kXZl+R5AjcLet4/5v4L6h+J8XerIpr5MLfk3vle1qUdlVl3MtxnN3fNjXxJ3
 bOFg7QfiL2NHH3fh0bpVb1pn4u6UUG0xUBJ3mBF5OAuD9Y/M1X7ng8ba+nufTexzj8Wn3au4
 GdPcgF501EhPzWoQPJ0AjuvufmcCf698i3xoOkVxUaN2uooIEjQ7mBdlEEpjpxiYrbl8FQ9f
 OGZJk67D/t9oejq7YbGEOCCPe61/lpHPf1vYxCz0kkA+96P5XGclg8F62isuc1NMW4tGHsNq
 U7RSZIFT10GralmBMPyAtVwDr60Z4Q0lyeKI8xpX24CINJNoQNoBjAHHdrn4CcYIIHdyKZmA
 xB4B5JeDEmLPxXxTb/bX5nc+KUd9+vvUDaOYz5ZkvnessuDmE/SGq4nA6OuA7Raz00VRDlcC
 FlaCLMbhThJGCTpXJwHTcaeWbYFCfM7n6+O/yOtzOV4vYYLrx+MXqcymruo9c1Yg2Ulv5B+M
 1N8vGQxtIapN9xIwZ+Fajo/c+lreP9hM36Q76BSk9pXsivmuAM1OIZnYFQVgsfExHE/yhtmp
 czuCLUSWIQ57FzBctA1mFDbDAyjbH2kJeraVVEIN4YlGQ+pocPc5vcU10ZuKXKsMFkbplmBS
 EXC4ZpEzMnhshzWcK1XGzESYAx5jNnyQatIaAAsYlBEJINhgtcaEgqaSPw/zuP8X2LiJ1BUf
 K+EJ/b02yJfm1w7hDmQ1v1g+Ln5r5h0M97wAn7gNdrWfR0wGEc4AYTKPqW6D9ljnhgIvxxoK
 AzzsdIu1e2NAn8nlQjCNQwtDJDjpl0lJscwhpKTJDGe6tY3dP3zSGa2s+C1jVoaX7LJE+3/a
 26qcJX4iEQekyXq/7Q/Knt/80JeT8nytNiILNogumEifiEhzGkb1ieHKJnH3G0eKekZwMn4s
 +TYlPiPdRmLY2TrEhnfb0vMS4X1g2+Evqqk+qlw9e+hEj+E/JPHzSeZeJl3ZajYnz75dpoVa
 LdgWjexHOsxvijLAyafs6EL5ARs98u7XzV34He4z6LNY05CQ2UxxnzpuG5YWGmuxgw6iUfx2
 wy6b1GTZjTuEXVMaY222zqjvaC1TMpKg4O3r2I6VNorLkpDZY2nsEoYcc2zfm7umRam3xtbP
 wK5SGQV0zjO4F1QSz6EXsUygfOqO5KjSNKy8K0FFXCTTOZQ7/R3zull947VuD96Chnx/yjFa
 yUKw5wYi4T/GWK9KnRdNUtcZIL50ldkZ9BQVGedEINC8VUbGO1f5F2EY/4WcowVGtYXKS8WF
 MjDsFhBhQywpMpQNHRrYHbDa2zTgbWLejSLhKhK6MnEHF71G2Qz2zRDQ0SImfMuzi3Qrl3MY
 4aNwwaZg7yhnHYuLI2lkTb5nV7pqw0qS0WyZdookpM4eo92oVYyhUhikcCwg1jDVi2ua5biy
 VZ94dHBxeShASneDRrG3RFUNgpyEIzWpgeGIRhCdcvG0JFJrXatEMFA7ZpGCp8DTEqrSNK+X
 M7oWwoSqKDNuHGu6mhUcK/io0ceZeKwZFouksaSoyyG05aJyeVudTpcQ7HFysWIkh51x15x5
 x0rBmAjollJ0tl0mimwZYwOLPL+wY6wTi6XShOC60omsnxRXxrkRwpJCHpTM6SRFj3jK7CEH
 6k3T3jB6COqfRscFn/CyhMddMTiaiuNGJNQ0pGUiVcsrvFi1dN227Sq5YxX7oe+GZCJtgg0G
 YCAhjc1JGv5VtbfDDPWrWox9i40cQuspBaqzZfBG6ycjguWysrbNHf+yH6IScgZ2p6w2Ei0a
 ZBrME3r7+JMUEebBBAwYEo31uYc1UtDtp9lrJjHcOQQ1VlVJyaom3hiYOMXCWgo+HuwIFX5E
 HcsWb608eMwDrd3xOdcLABKppDYlAxVEu4mflF5UIiSAqYCMeaAk6OOc3e83nJRlnE3qCnWI
 oWTBN1W2jDN3zAy+fXhQG3GYWCzWQz0TsQN3CsAmPDdT3ahAVpyNrKcLJ3qR9y4z8qwYoYNQ
 pLj3Fqe0YcGDMU6AwNsagBpQQpaenqLovfv5S9OGD13MRjTypPz86u+BzKZ493ctXrdvmbPD
 9bqZw+HqbEGr8sa922WdmTR8Fg2UhUDC4IkRJsEinxISsMA9C3qVsRe7nTW2Vi6Giq77LCtZ
 YBS5NJzC3DBQMB5dixEeSIgCIP5zXCjpkgKuEDAPL5bq2GosC3mr4msibg9n62gk2dVhalux
 kVi1XQNMnV2GcNzvrrOWNksUXKhiuzzmbVyN0PIySjsW4ZswQKUZyqXXwhe3a8hnwZAbpj+q
 kPhMUYxu8MUtWVkVaSp6tqzlohIGwATYB+waSS0rHaT1DDJ+pyjGNJJtJJD8mQyYxjZBJLLO
 UwSGzVrFuMsgtm9rR2L53Vxi13RjKyo26cwGy5VNIitERiW27SAqqINSACZOrtS+L2BCZrj8
 uAwycbFhaRBhhF83ir5XwrB/pmNZWqsGYAgoGESZghCGxNI4nx3y84GbDk8QAZNKl8vzPpij
 bYDu4LEiQ3HTya23dpGvBLsswW1REtq6Ilttc3UhBnSGMyHq2RiaVtHrpc2ojaGc70wE6Dzx
 Nx0a5caWmhirKE6le9Our0TuG9p6aUtt6M11t0owukNgWaAi3gtPQxQHROEzJXi7u9ldX1Sz
 1tsBtFy2KLWiWGcFQNoBsQs4GzSR6QkFIKJhJDV6azBp4mYyMBp1esFqgd4qDIxrGtYowbWV
 J22atl8m7YKWjNeGkSRBGJPO2Vq1WLmT1VFdmdpHdu+uTLIuaGol2FtWXFZXpuILCAbBm5p7
 ZyrvCM4bTDW9eFhBn2VzDvbc8c7woLmsa1PJocg86plTcZcZrvOANhNo8YAmYIiyTwy5IqZX
 jgrEswoY4nDDF4NQzy1PRGfo1ts2trPbcd3ge+MVoR7mVFNXQLJgojJ555opKWUtxoCd5d3K
 m+6G9UW/pWWrHlZTXageqEZ+G7316raslHt5UriDRiLtFrN040PKIyYda0bMtNu2ekAzkNjV
 nkhtN62EYhsQx3yoUVXVJF5AB01FHtMzvlQYZfKFspoMLZy7vkVVNggqZMw0la7l8olOHXlh
 vGDSklZiRkZ3AtTYRsPDhtUtopxjBjGaFqDavEamBm2NakNoAtLu15naF0ZtIqg6uR1dlsGr
 VSMWgMzqk9IsICmJEDb12jqnHTUrKnhxlnTu1YWHknjDgh5XoaSDDahMr0btiO5ActWkJt3e
 qs3fLFBq1QsOsos2ssoYATYkxVNQa37vvojq+q/Y+gfM6HD42XbyFBjSQJafxrCwsK2gXxkB
 KICVF5Yurn9Fn5sPqKfVi7wtCg0ZhK2aUbeq+NVUXSUh3X0Bd2u98e16Xh+3MODEr56OmTF7
 +/Kq/cKWmx2jNIBIdoCBBVU/fZhWsmBjA3waq2Uo7Gph5xKWFfiMlZT+JxNkxSxFIRRZee5J
 QhBi+GMWoAg/RBq39EO1noJ8jpY9pkMlgmthkr3fJWQySq5DAZ3u/GgpeWXKBIJGsOAtSAJw
 Al5OrU64M2/6XdHhPq3RX7OD7O9TbbjvOjzdPtTg0+5N6DNfT09M7yZpoZ1oSWogugw3UE8G
 IzY0J4iCCQjtkZbks42a/6bzG55i8MN2fxdCeh3/rqB0BoGIjvn7Btghtttptttttttttttt
 s2B8aY58dULcARHBQS8CpESP5PrcOSAKwgLCMhhFcpEVhWZuZYXiwtWa9BtCkS9VTIJDF9Zm
 xsODxhq1ne3OX3VAEWORPwKAici45y/REN6mAg4ETgkCxqgxdg5MY4wsXFIAwCyUyLZ6ci8Z
 MZkEmgMkyAPDVUV1EKigj48yFOEKRnc81+Ds7OwEn+Z66UnsQdnKFcoXTN/vVpGwGbwRxQMa
 Y2wYymiCQ3akcmyy/iYkD8BwdOBLuzWQHT8ZL1SXNcTQjojElzWdcYhcvW21c9nuFet9CXtN
 49p7TjVuVIhSNr9KSCC5C+0aWEEJiF2vvzFiGtt7R90cZEt5EkG87cU0oOOC5wyxX+1MZyaz
 c7TdVMmYrXUnLe46ypHM/WtmaV3Fvebp97K43kLqLVsFgMPZYyYLDaLywVEjzhE0aGWMssC/
 isUsJPPetkknYEGeGmBcpS49IZlcynLYPDVJk1y7WLk3Qdhj9bBQO+oia0DhdM4dMpFdfmaF
 Jr/G6ndu8rzbYx62V6GfwDGXC+zoEQEyLFRr1MLUFNI9Ftwpiu+g4xzr+jZtdlj/F+RA4uAm
 rfhX07jfMzsDCg4wwAiYei9R+Yhw5ACQAuc1zoLLeAhWFvk98/876Z2WiWa7yEigtVN+vO+E
 uBLMVtB5dc1y7UP3nOmVsCGGbRTR2hIJUDdktpo1EZOvezTvJh0JQZtLlDsUYJFGsQQu7+Yb
 spi4qaQF9ra32xnbVza2tHErWjtRJt7cpzSwrQaGZTGTY5iTQh5gXcSNJY5fBYpvr+9uUZQ5
 o/qjVqSxZXZzNALEHJoUU0/ekvvNX/j/Hf+RYWrCzHSHounl2G5g3sjoZsZ0c9hjGMYxjPKJ
 1G8ofyiOm0gghCrE6CdIJBFLUEJocAS8EkoU6/dx3Wkb9WA0q6g1tbW0dMReW1dwlH45Grrd
 A6k0YgLggi5mcdSxjGWsYyuiUIA6U3fTp2AF3QWSgHBYHsaQz1vDBCnFoIvXgdagAEkuIGtx
 BdmKvWOhimavI6Q5nNa5jCA97hjM7GMYzL+Zmu0Fp4C6p4uvQKkffIZk9IQA7bewGbEMKuRu
 IuI6XpAIcV4vv0jSL/GGN1SBOhBBKUoA92gefRvrWta1rXyuZKI9lKNjopw2JIsfIE7oup2T
 cGJKKxXsyJgcGL9kJHKc6RAMOpIurBZUSOVVVVVVVVer8MeH5VcJc0J0gAWukCQPsXA4nq9W
 vc0ismygVADWMiHQPj8Hjue5MLcAx508Fdddddddf1WsB8F2hJpfMODgqYRUBwO+zwHgVdwJ
 87wqDQM2zFVwZAHEAgQRTTTTTTTT0W9vUkU3Z/twPMTWWsEWMDsOSQIs1YAeAdq0ukudzoeu
 PDAhu9gbtJLmyNpA2dsOb1UktbQdQRECpppppppp7Wz5EOmdHEAI+YSd/fSATxAsTgjFHXBI
 XmFiM958dIqAQ+GVCSjXLly5cuXLle9O7V2IMCYxArgpVWKgIk9ypnhmYjhs8Z0wQ2dWW/A5
 Orxg4E0Sg34UBM4/IglppDErBw1STAWQhm8Jl8HS6ic2hqZaKdOsewhsVbFsC4omDU1KO5rw
 nt5scEb8LmiL2HakjwYuuy++7TIC9Fakb2va3X6Obj+xi5MYHMz69HL4reG9qX8gHMMFyUE2
 RCQsqxZXlACJ6enp5xPT09ASTa32rnNhYAHqUEDSM1etLndbqoT1GDIXu6ChDsIkBNxwpX8Z
 yyMVUb04++CiWAKoQYOoMQ2m02Op28u3t7e3t7e3Xbteks68n8iMHiq2NBTTGaMpzgG0tRfp
 xxRvRhBpsY2r1wo/JJTfgeAj27ggkE/jwlnZ2DOzsednYA6S6DEoOlv+4Pmdxzvndt0+cfEq
 WfWglNkwZEAI2BhRc7qV/o6jAhAaYGcp/QnUUk5eZeJqZ+fuJqKKWy3PqJ1GB6SiXR3umCPu
 aoYTmza4lz9u9sHOrCvm8WlGxONIeSTXE/j5np8WuMWoEmZzSxCZKmg8bNgOhPoAYGU5OO5y
 cnJyclymKaKSAiFQyEC+pYbbw02qc2S5Kgdr24ypkQAWd+jCPmMBQxY3usDp06dOnTqnxoLo
 mB8LccNpUXyCXhsja7UddaHY3A/wN6fQmPT3mBtWwKBjkWpgVZh/5W8hF1XEKe0+p/blJPfq
 6mGx24zm7g023I4iIwH0KxkZiWnF+PaR82qILTZzPbC5mXxWrgZ02pqOxIp76EpQbNDSK3yT
 jrc9UhhFz1WyZB3m0SbP+IFQNqnSnsNH7AsWdD9qcoo+hezpXaij659P+je4W5b7p+1Y3YrQ
 8HOC4F5ZgW8fij35/fx/FPnT7HFQHpWSA8PjRIeNETAxLhQhN8dw0aeaG57fiULy/ZeP7Liv
 +zl92ekDyK70C8VK2omiRzagXr6jEe2WmC4oqSxRiUveHvOo8NFxPu5oERgViMyLRRfVh88/
 b+fa9C3dnzCjIySiG+jrwd+xHvTwyPTntT9okAWg69g8ApvuRlj3vB/v6Xp8F6zu8vuGr2Zb
 PVF1t84gmLUMLEoCiDFCUcP3alvcbsJkE/LJAD82CufwjZkFJdCAYxr8+PPe2jhuMRXAVP8Q
 5tXIuUEo9oZTxCg+7WpG2DrtN1G9KTS32nvpXeZ/KWs8XM00ed8wS2WLfhb34vnGM6BzuApO
 UC4wBg2bgxPpiffOdBkccYOnFcWiK4DfIJiyn7Z0AuGGSaNBRQw9n8aw+Le/OJBh24DwOu7h
 hbbabY+1Lh7NQPLXTufX9ntcOoOO8a/1TKMsK7KyZ446gDPo4L1jS+Xt3tbu9ZawXQ9bpkMp
 NgJS1zZ41lDwWzMqRd+oSDOzD8KSDeL6ZNWhwkFwVR8hR9EfyZ/6H6OY/nFw1eDQjJ6YhbNl
 md0nT8YrGY83UlGipEl3wVqjo5KkUZ8A98gxsDOcVisLrWu20agzt0EvVxdyb9Xqu+Cq0GHs
 tmAz44DM+UGQwqwAwIMA7gxg2HNx4DNMBQpxKq+soBmLOqwXC+GUvpIV23VTgCPsK3pBFU7k
 p5e+mLkZAge1p0qBl0VCqNPBHEYUJjbbNpRSLwVZutYSeepA1iJXVWGmzzmeWJaxWUf/DLSl
 j+LFLYOls6ciWNsx3liMIiSKRZJgsUJdPrCKxO1Nr8cyROT+XsFp0PhSsPjc6WC5c5WX4mLj
 Xur8/afwZc8Q6fDzeXye6/lbW742vjg/UOJxwc6yUnTg44OOJzgRssehWarLIwM0VsGNmUPv
 j6I+AaXYMcRsnPzDOpC74kLfSjhdADF/KaG102HYM53IgsBbq3OYqZK9ucgFCUwV7UixSKAt
 FVHY06iCzVGh7OXAFDi1WyZITNSD0QjEVDTWuBTHodlFgyaZrlcn7/fYTzeOLkH4udXttFu3
 +ti10WvcG6JFtb8tc4uL9fi59CMGtCwEpOVXPbBhvTQzOGtvuypKG7mp3zHv3y7zmh8pgNvu
 x7K1F5T5UojOQhdBcKluJ2yDR7dWy5uxb3HqF6wkCtor5GcjAwd+BTkhnK5DhB5Zrer9doX+
 59v5praGt2OTmcxGA1cxT0LNA0x6KTBUhMWmuaKRI0WlwWAa00rwr4dYwGB2NtZ4w+wLV9OR
 oaU0qpqKE+uo593BTexirKhcwUyTQqMgTN6yhYfAkUfdnAoGDqYRqRYzTNELBCDEX1lvt4eU
 MRve0JPBaRdglSXnfN77zu6PM8M4pXysa7YA2SBufAI4kJJZMxp6AuUMmVzE+3S4RyrVliar
 JaL16Au8EHPaApSvomUDBkjDUVHSLdSNIZNV6Ujk+XCMt67I5joYu06Ru/Qn6DuWi3L5W3+j
 4tGF1obHuyjZiz0KChBABoYBg7mpr1ouNyi4jjlNvpp3HAmJkbuBfEwjwiV8jc/So0F2Is1E
 ZoZ4ZfsMDG23jAzFrhIdtAM1LWdKoa913FKJB+mrR9t5xaKA1PnxDNz5m5uz62pkvymsnx8v
 GYjSdX4tJ8Udvo2wHskaIPb28kCgE6gC0AayMoShRUVFRU/6i0B/cdN3orX+pjKHrWfodWB9
 hLnubbme7zq50G4BmDdIR5ojotQIw7y2kNdunQepU0eqVpQOmqoqGdwUkinuMl6ahd/ctkx3
 QFgFADF48+suguZ0awgdY2QwuoePHjxYt/zDx2y7vdXZ/E8T3tRwMRFy+8/c9L42Q0AYmzgx
 m8PhLv0uoID3fgk+EbBLCrQFFo91cBsaY2dj2xryS15qLcC9I8hlmPWncwLbwk/Nf8OjMqJ2
 c9WyMjwhZpi2gh68HqFYAaBgkIMGBYy60WgYWkxA4qlVAjHDKZfNiUWATMzMu7VcFxHi1GS/
 l3C02vjgMkvyVJwORsPYsc9nvT2VlzOB8Vusvl0GpksBKFGiNMjMjMPNSI2Spyn4G7Wq0+Yi
 henc0MVg+jJ2jlkqlNdMUcboot2AWn0MPkXVV6kpLp0oCTePsleC1qhVaORNu8gb9BykoAqA
 b58+eaxg68rw6m/f1/G1/bpvsX2MZ+ev6uprKj35SWwHu5rL3L8KDp83y9fQxlVg/g/O4m2I
 55yUQZOUQSSPE40ToM8po5qhciRqYYkMLnYxyeTyeT4dP/3DfBoXPydkbKui+Yy9evXsNFP1
 y0XOkPtqYBNszfR+KrBBmsVEMXUMLPOOw0KIdKyZMmTCrS3xVXJZqZTo9A/LNU9V2JlX0/MK
 0FbdD7zz+L1SatdrBlW2zxqR9MmoJh3Rq52LOzphmGee5/sbQtYRpkAUjAWNVpQLTGNQTFo0
 aNNWPj9jcyev8rJhzYE1DVqA2S1atWrNqu34jSIIkUEAGmB5+d+b51CPbUqKr+GAwjDDhw4a
 Kz2/qv9Pofu/Kqk7DePR71ss+pg5pufe7CSYV8CEIIYjrtfqjCYwPWsDBa0iI0QPLaUpYKGR
 MHMTDtB/vPT083T9T+B5nZensL4e2+t9H49FHm/hG37HKFI2eyggObly5cuxScjTRF5e5tya
 SBzLICQJAAiBjzjjCZs2a2gjJBpQW/gqSJ68Pa7d29/LLLY2bkUKYV4w+oGMbY8Z2/nFPVS7
 M5/pxX5ioAm3CgzkWFCpAerjanlhmZ164Z4uqZPQ0mba1BveNzs8GBxEU3t9tulYTRteLjTu
 9gs6dpFpQaBdkN8hB3DYs1ZRAAgMMRmCPnwo0YOCMGMG1RXs9KYKdLZWeAzojXfy2KFDyhci
 jNZB0dOQxNPMaQd7Lc3RcbNmDbG2m2+8k4/EVTdnGm19QSJNtgWfgs5Vobbbb7A0A7Rp3+FH
 6Ifjcb++VGVt0H6i4k4Kiv6mi/pkbkkqSpI404X0E9Djbq4SbO8lhfWs+RSL/U/coMShj8Qt
 YEZlGRFzeOHenoKGe3+mZsq+0RQhrxMzz/6ofx7/OutRq8k6nb7gcPtakqrUWG4jVxxWHhio
 k1l5C0CIAhMTRde94UuVJb0gvoMLiAO6ax5NQkjgYh69evXr169evYaEmQKDO3wXaNpx9dqK
 +dVhKsxAXH7zkiDuZ4F8IZ/hOUFCKEMR1hpV9XDRaCQ2/sCpWLsrZaa++7wH1hwIB3ajd4nK
 L6/vfa2Ju3cZQIuzvg9iICBT6Ey0XOqT1XLzfQByIQoNggWAxdQNcayHDACAEhUOT3aOTqNn
 DaQyhqDX6rFQZM+TVGoMiaoMaBmBJOxYBBEEriCYBSHCrSJIMloRPpECBTGPgqnz58+fPn0E
 +fPnz592PY8fwNdAjXYeVrCztlaL429UkmjhRRVFIarG20Os4m2krEaFgviSuWvqBX29reQF
 Vu7K5cFaGj95rWa4dp8DiJAy5HEcDrW7zdDWta1rWta3syLsI/O0OSImeBICEocmvCejt0Fy
 hVgwGoAYK/SO1Ga4JdbQDawdK1Fvg7HeGvQV26hpAXQd4aIvHOXAUQCa4v6ey5YXwsaOOroN
 mIGZCEoE4KJyFeRMy7hUyjJhG0EaaxXH4A0BtK5rysa0kFR3Fl0usMmI4BwTzHJnGfzZXa5V
 BROAfPJSN2xIqnn2EfE8fHwsOPQMpq7EIlW2sBrCIeaimsNYKRIcywgAejJeMRdiG8qzGAQx
 KwuwqdfwVb3tXe3su9vZ29vb29vb29vZA9jiIBZmoyOaQgjYUTkOh0wDrORVbD/bVLABBk5S
 A9Gt2Wocvl3d/NBdeGooZyTZ4HFwLgjOCI3AaSL74hscQ0CaxHQwJBgE0waaJLHxAETtMSlC
 IENoaLG1ETuSjdeLttt4BmsqB2e6JsNspY0xagyA5dgIOlxSNJUpWGcxztjmN3dHfltKd8bY
 zl093Whkfi5rnvuDoS6M9KOIG7rBzyjnaZi1uaUqsJ83jyReRzx41ePHks8ePHlyEI7OIQ4C
 XJuApO5b2p2Vv+Hhrtioifx9VmJGStymS+rA4rw/n53I+SKEmJ6LCQRTJEUYYE6KRAIhHrgq
 PWdKFMGNmfCTWZXCGuF7lUccrFQYyDz6SqKivO88BwTsMEFwAdUWh8zel+Ym97jEREIoO7c3
 iCl6+sfkjS9UOZNFtlwdxATymsuzoJBXQS+OXCBbbWqkiD5AwhguKl9fNu9hGC1NVlqqjNkG
 JTkVYpqlAVHZtAiofVnWIAKxWjAZy7XM7kCcQX0BnWJIYoWdpFu2FlwLhQQr9oIC5cSSmqxc
 2iMCifwIcfmm+XQ/EDOI2WN43mI4ZIhjBl1C9QSJq8cVSOKPyiojAGPGJQEjMucW0bxZD0Gb
 hWRyVnYJ0HlVzKFGXFlQ2223m4qyExmsGMAvElSMtMXfmciat7/2pbtmmYGinCBLwrs/RG3j
 QVTMBUramxXBjGKNYZm41HJLqgYcCNi0AGsEOEGYTZG/fv389PP2b9+/fv379/ixBgAhBgwY
 xjaTG2mDF7aOuSTBpDHI3c4d+na8vfaDRPn+A44NxQlbQqUIkJBUxJEto5ZSINmZIxgrUFme
 AAyufxb0KC0aHHso7bRlARoIICE9sha1rWtc617GxsbGxsa+NBnZUQk9OJcTMaJI5NILiskD
 PlQiANU31fXsBbIa4FJIivZ69j7DZucaFBWSiFxiARjt3xuoAzGCcGkdwSEIIhIngQCyO4IG
 GGGGGGGGGGGGGGGHmD/dk//SutGtmizD7h6G9u0aVBDt/L8H2vLpAv1x8Gmuz0MAlVs8Tup7
 Upoblk7eUKSKjJHddxuUGGk6dZ6wsMGFs+0IS4lccTzO7du3btzN27du3bt27dvN6nz8mj0I
 rm6gXoQi4gAkDi2jLyQN8tpJJkjmsGNvbkVCXB6si9y2WEF8fCOyLh5RWEVogqrvCS6yTY3C
 bBp3pz3AZglSgOstTEMQxG7qNvWbSE0Vg7TC1AHfKFkvsxoZLDJA+1uKwy2BbLl+0dzyEhpL
 pWqzRSKnjQqiAJQHD5WMu4hCGQ4SEXjyTMuYqc2JUkUNtFuuoNqmz+O/dPTLVw25UI2OMIm5
 I+3fNSwdPIwbNy0JjSGzCPHr0vSLRYK4DoCtl6xGYXjODIuxD7M8BkwDSAVhkwUFRSGghqHu
 7u7u6utu03d3d3d3d3d3q9scXznJLvpPFQB/VzPNhwCkDrwhNNNNNNNNNNNNNNNNNP+Q7SMh
 yQLoZELlcFJfZM3JabJVLYK0uXPY3I6slEXCGM4dR+7rhZ6MEBPHdHVLWta1rzLWta1rXk2V
 82QBwbggPOBIkxIHbzoPCnQVaAlSAFLIoju7Wtvp8jkW6/ld3YTwdYurg80LvY0G46io3byS
 kMJzBQw2vWHDqzKLgQWpCOrzeSrjassQsAJoQWs0pQNKNrNzf1J3WFTKrY03x3lyx7M0oQU5
 JKCAv2MQHppI0zwDHSJrF0e1m99dFiW+J4h5KO7QUJIN8T5YwxloZdcEM+BLNfUoD6JfAXRi
 AoJqampq2TU06mpqampqamppLcNiEFEoORe6J7b0prDWxphdnxByFp93xuGYDiwdVx0cZIUb
 xIpRy/ERdjaDAqJWC/f4x2DGNFIBWkhq15Qy0M7u3j2dOSFhJKZCFaCuSoJfLqBBtQ8QxX+W
 cOKlhSmoAYUYElN7GUD169evXr1u9ever2vV6vV5JxuGdFhx7InFA7+gsUhcuigp5TF7KuSy
 vTFUSKGOscJMF8Tr1SoUGrZVQ69mq3T69LhnE9NODTxHDulUEK7fhJBRO4E1fcuiIGhHvxgn
 QH2wNAFXzrOIBWDtCINTFxmNDQ2MaCNEGjYBxtg9x40wRCkIhsZohkY1rZCQ7Z2eRU0DEzql
 y4iaMFBYXkzsLifFMbFzbRjoWZClDSTZxiWM0r9y9gRLIX4RQlRMbGmJgA2kyogoJBgK6iik
 qM6sC7UAjegX3Ru7rty7du3bt27du3buZ9XR73f2mhxYdAguBgnYMJBJkq24yJAS4j0Pbl3n
 qd44gaYki+hhSHiK8K0WfB4pYK4V10lpHiB6NBAZMYnYcglVQMvIwzBF2+3dYFgNIlEoliIQ
 QcNlIliStphkJE2gtiPUiZgLXqEuE2Aa9+6hfRcNGgx7J3rSVb2s1jKCyvjaOOd+FRVcoyDE
 iQsgrSwJYsOgNCJiMtQRhDQxLC+WNVlecz7MiRYLMONhtBt4pYtGg7jth/dmqS97PffcOrF7
 CsP0c87zGjVz0FAWJrFFV7Bjp8/o1y1dlaWfX8CtqbPD86Tw1E6stO8ntPoJunmYynznN/u8
 0Wgw/A2PO0P4Tsqig4O//t8MIZvSBCEJadyrnBB1W6OWYKgKAyItifWPsrlymtfb1e+7wQVF
 Dm+qfZPuvRq2Mp8tWCud0SSVrKF9emREIGpEwTQY6y6SGR30jAz1BEFAW0lcSpMt6BL013Ck
 7p6S5ZNRcgyXy6TDE0qhyC/KrlXCjLlPS4VnmAgsDAZMgQGAGfUf0DutH7XL1er3veOKOjvj
 ujo6Ki82mkXPLgHHF5Xd9Xp7HPRbzWOI3QIK/ALCEfV+OzUUIHJibMggxNGpmTt/q8xK8Sts
 tkAV2Ud2ma01/xjiW+K+0TRuG5EU6aAGpAZ5EDJIhEKCEmHZiBOBmtz5+Z2nR6OkeDVYO6ud
 wH6rqOk7+kwIV8A2agxKi7qEiwrHCpa5XVO/RVZj3Oc+2FdYWy6ay8BJDEHZGZcRYMymaxit
 lhiF7AZMzdIM44M5uqYGgwt8ohwrNXGEGLCYqVUVAvimI8hYJnWSRT7MlpoYZL8kZYvpI22G
 F6eCDFdpVJMYCoqRJFA5gSGpvVXszVNANSskyshHjs2CZdycmw4/HtVGB/YylIPdMUMNCf2x
 LUNxjifBULw0VzLlaY553b6mo55oXYLDNXCZOqNzZ3MF3Bm52fZauIbwFDR19YNbRqLt9IK9
 wtDLRQX2ToIloDGOgiKmIJWUSkYkK4yyEKYhCAMAyNgwsxki1mRg+r5JemWzYtlvAhUDSxkB
 BiwjECsxFxK4K7NBpQGPQJu8q2+K14ysJaWz3WLjaxhThEADGfZEq8QRwnGnHwJuvw4rDDqs
 o0Zy1RliBMGRQ3Qgebqgu2UnYEHqgZdlxGpamTF+V5NuRc/bBz2kW93d3eOWaYqWHYb4uDGv
 zXVgRAnvzGYSowlxU1QFIFZjJEyhpYyCd2hsnn6O9xa6Lpwdqwtt6BU4RfGsvEpELJUKvAko
 t16I3i4FvZqxtLMSVYQFxK+UUBlKCFfvkkBqGvMtIM6Es8ocG2hnorhQWrpK9S0MkATz7WW8
 VF1yaE3YRAmYMOW6sorqIBXSyyw4pECqC0VlyvhEBMZgeR+O0lmzILLubq45YCK5GhQYSzJM
 xVl+hZZKVkzIILw2WXBrhwahgNwaLak0kJYOAgCPj3JJzvwSHgGSip3JZe7Rc2+sPh5eRyN5
 8Hf4UHvhWD8BzBxR1RuRzhzB8nzWUaCnBRSN2kA8IToC0iIA6G63YXBJpsH20TDYu2HXFz/f
 l2s6EdYUkhW/6x0TAik+w7MO1+iP11opYco6PgLtc7Tt5iV47WkMGaMzdK1eM/t3E7BAp8vf
 Bb1SCEd9IkYCrKddFuTO3n053EWzDk7ohYfFLBdtd/Q6Lvi6v6fqk4JQaFjC6ogQOPBUxSAK
 l9seyKcOScB0lNtRJMIolpTfqoEuwv0Dou8FaV3VO/atBFRU0alXBpvoY+7IwOuvmcQ2ZYPV
 2iBrv6FJZDRumMxQ1+QW6L2+kloJtmXL5NX9Oj+YfrrUZ72asUQFHOwBIp98oIv6bl+BOPtz
 fBrzPBLhQhFC0Mrz/WtVoCsFaDefPLcURQ3CS5BqbZRvqA2sGMB3bLX4nz966OuMHdOu6Q9D
 nIwQYWIMvwq1XhPg7d8AJhgQFiK83UZtjt9v9IICbyvLl7CWAKdYWFGKR5zdMjQ0YkDdwuXN
 fgDGVVFnmP8+gLRRTb1JhN27eAJ1VhxSj0Bm8WeE/m7Nkio/HVtgWNEfkgtoalzdAJyxeKzt
 GGS4eGoM17RozQYDHxREIq4DAGvAQFQsVBoAMwsTT+dBxJmZ6LQaPmMM1c9jmJCI3cPs9ZT9
 Mt5gkDeDo/D7GgCfkRn6Hnd95uf3vBrscO8StOP4icc0fhpARMIISuDkxe1Bnowb5IbchHpQ
 yCZDhOdfqOpDrQtITLWeNoqGPa+mzA+p6JF6BmQzSQhzRqUn/GkbE22i8CyfhTPaGxE0eaDj
 d5EjS++7/v/fUFAzht3mQGf55RL9zvOdm8A1S5B1I7QZCDJQFAHhKv5W/qTFuifRPBZ+99Tr
 7vu/dtI53C8YdSOh4buGQjzcy/fzs0peJe8TGx18r2mV3rEMYXc4VSxaBVN7RtgeGUQZgyMA
 wUMADCO/tfk0fV0/cwOh5f1Yq35T3cpleP3+f2KT/f+yI5giAHk2gQIMEnXSLqx+n2vb5bHD
 Y/736M1tLd1Ol+3N3/7vg8/QQ6HtekBoCMNjHgzNSt/eEvOMXDag/sowuZqAMwD4UCZ23idJ
 z8kNxtt9Q5wi+XI8rccGA/+y163Pj3UDWafK6PV3H403Hjb0erIA9TUwySiDMWG2vXJeOSaE
 y5szUGaM8/wfHe/V3PDfXfJb1oHgMuaMegDZfQZDB+T5bjmPCu2HRjU0YOkNJgvegOeyZMWP
 pwe297ZQ1hycpRB/BY0ZZEJfJFAFmTqJ0ERh0q7CQXCAZXTE0lFl+ta+rdYAQ6o+aT9moAED
 wSGPIBjBZSI5g2cOiw7+IIkxw5Lhqm74dAa7IK/8ZIhCCibl4kQLAUfqeOfV+HXU64FbSBgg
 yBiC/y0qZLWd/lVE9CV9hmtJ513vkJVfXUa2/7Oeyeu0GpquZvr7x9z70eUkcGZOz3Zkleh4
 Yf41VK06MICViFyuDWy6SEuLPHSvEv+Ds9kx4u34WN/b2/bu+UgrGszGtUEmHJBF2FV82DUA
 3WTQIrCydNQt/v/Pbfq311N9Wuu997nS0Hcp9nsXHrPgivBywjZ1IAhvn8+/cP899roV9y67
 DwOztZSpnNVxqT79hJ/HO4j/f5ES1wwNBE0w+lhOFWb2L3/Q3NE65/H9Ld8xt9t09qa7W2zN
 N8eC/vtDN9CuGr6DWhjyR1gjFhQboKgRxqg7HiaeVkO9S4DYW7Dc7X7CfjPv5n/hotnCdYe+
 4EQp7gqEEV0M5vcO7fbZXCLGK8vbC1BC87yUrlZdxxsHyJmG8YmPXajzRiggNQ2CCMtE7C90
 3D6nE/bv6mfOTPweD0ESTvpYNZkR+Ncjz8WOIUQRfDfTIB6ljo4NMWKEM+oETIMZWu015lzc
 p21V0/3iBrMSoqzEBEapENtfuMM5ng/ffw87+vZ7jkfS/SzryufPOkaKm5o3GRv2tRttrj6C
 ijLZhGLI2ZifCARAIIumHfxvtt+nj8kev4BwAwgQQ92fWfBrqYhxudNTHU674/Xcj9Hodnrz
 jPMhI4yvRMkkP3/Nl7SbclT8Un4p8+BYZc7fKUxrwmBNJgT+Z9p8roeFkyV/1XYNnSGIuEr2
 SBfS/Y9R5N7g3vw/M9hvswud4zCWDzsRNsYbGQ0IsNFeP6kPVs8Pa7rLsWpEdyCGrQ2qoJQ+
 H709V8LhRkk1/fFQHbZIGkOzMBqaiD5yQSTTaiM+dIQrMmFkKYbz6CLBHvOrfuHfrpibzsu9
 KaeJryOzRmqzObERNwTLZAbiqLCQ96UykNybY/gTiIGZ4a69bVX3fdVFoAcaqgjIUN0pkqCK
 dICf7BkN16Om68r8s36+x8dh4Hye1f4gzp/BCCKD83TBBBBo7/nQwwxRd1B03kBMyPai9JBS
 lZpZJJMzJkyZMzLiwP0IR1Nf4sg/yPpubqcI/6jBSX7A5+vggbITzzzzzzzzqqoooooj/kEJ
 FDDDDDDDDDDDDDDDDB6v6RI+yRIC+YEAgAkiUpSlKUqFSlRxx8HU+EXvZfi++LjfCHQooL20
 Q37XSL7YAkfk1VVVVVVVVVVQXV118KGP4yZkWIJKO1QlAR7UJxBHBz0pTiQTgH3hCiiiiiWi
 iieeeeefWv10RT+QlJe3FjhFJJJJJFJWqWSSSSTn2bvLEkaC7sd93gueITTTSxVTTTTTTTTT
 d2vq4YpUBCflDwkgpJJNksssssssssssvnNMqPWypNAlDieUhx4JA7v4qZpppps800k0ssss
 vTj4ekK4Y8ce4DoJUUUUUUNMcilKUrs+7VEOENnHRMiUCWGDVNLLLJJJJJI+Q9oItMSIkPEN
 kEcUUUUUc6lKUpUvhohHz/PU75JPdFrCfWB7WEY0OkU0009dFFFFFFFFFFHnvIhEXMCQBHHH
 HHHHHHHHHHHHH7DxpophIlz7QJAslllllllllllkUrvfT/JHQikII8oJSBxlKUpUKlKjpVTJ
 Jp9TskcHaoV0XMT5kADf9ITiMSUkQuBElA/zCf50D9UdUMbhIQQ2bNmzZTTTsXVVVVVVANIv
 8EOAXxxxxxxxxxxxxxxxx+shUAQQj2wQCA/4lAGXBIGIggiQgEhA7JLC9f2n1CEc0seuiiii
 iiiiiLXq1ajIEAq5xmbDCZmbRJhgxtvz1a/wGinqEfs3fJpTXTSMibLDVwsO2+5UPCreskwi
 dFk8XOEo0kCaZ2pDB4wd6iNXageUHdWZoKsYSZBEwAbms8GEapCM81WiGpeUqRk1fWHKzPJI
 0NzmsGaCUuvy3krnM7HPJVZQSFJ4TjGNJtObCETpGUpZKy/7xRzTSewGBAuGZEQ1ANbmkJun
 +avePKpVGfSRKxtwdu3buUlHcrCysrbauNGrRgb03iBkYnLcaHxx872ViSXEYBgJSlYQTnd9
 0455CfbwpyEHUeaR4PxL2ta1rWr5l999999/F955kYDqRMsYC4OEU2aaaSSaWWWWWWX8tUAF
 XPCEkOa7FDDBriiiiiiiiij1w/D9+PIA4coDw8cIJO1CSCO8875NFFFFFE0000001E8Ii8x/
 UNU02zdPkkoY+PCONBGeO4jg4MuDg4NnN4eGSSSSSQudf5XTK/Ww86JgJppppppppppppppp
 uLxxJECzRRRRRRRRQwwwww8rT40Kf/Qkh1UUUUUUUUUcqlKUpUArhj5aR0riQhH07zgHwQ64
 NiQOMgTzzzzzzzzzzzzzzz87SUQ54SC72KKKKKKKKJ+KKKKLj7fz73P4/N8b0XE6bX5KNfih
 AKxFmzZs2bNmzZsppppp2er98ISWLFixYsWLFhw4cOHDhz/cbR3f4MAdTggGYpEvi/0Et86S
 lGfnzzyy65pppppqJ/hdVNKIlD+gJ+B9z9/8EUjWMQLVq1aobNevXr169evXr+RpnIEBQEFs
 sdAUpSlKUpSlKUpSsB735MX8yPjoGQdKNc7pF9cgdzvUUUUUUUUUUUUUR0Ud9+71PI9N6ir3
 Osahcgdino3Puqkj0CA8hA/hGR4IDtyUJIWWVVVVVVWV111119JBwuBMUtIvdIdRJ0dZ6BzW
 9mThYEo9cXOI2du7zBasdwpeZgNATNylbA6CcqSFYuY1ksKIEmbcj2m9yQC/tf35bn6LHpV+
 kJduSXwgNZU75UW0PfHDHK3ot/GOF9PqKBBiVRw2cyma8IxcyKLFZBp7OjiR304jbEKiCfi0
 kNnHHhFq8jFjtafC9vlM3Kfd8pR1cWP/Y2U1sJkrK75cl4yTdkndJsQalaqQ8o5hyKTj0M1y
 NLjrSmuEe0zQbIadAxM4YAeSQATccrgRiQcHTVjXDYbjl+1zmbm0f4emWZFinsaCRdx3H9a5
 XfJ2zucF1xbigmBjhicONLZy3f2GB6PzpeaopW6zk4DAc50o0hgGPnBJKbLa//mwHOKRd032
 b95tz277+Y4RntlwiKTwm278vaSL4MzKnEMohQLz/wNDFOkp+H530zqzlSvu5Z0kkO+OdDkO
 oTaqcfl/K7f9D4fy/l5mfQ/eweeHYpCjgicEIeBa0Z8eNWJcaFiyEUUW89bxsarQ8izYPIKR
 f+90YSCGwCJgJIoUNgYQcxxurUdnfU+QqLzMsR0acIIYu7wQrwovN8eCVAtoMEmSLdf+CROy
 6CLNGtcj2L+RY7peMtmeLaCju0ge5orKxrCMXB0yQhlynKTCm+T6ihQkGKC9mYXyXjL10sJh
 KqqpeKiJ7o43Uw9QRColHDaG53tfAausRe4/6HnVYYcD7nIOQUlv+AxeW+MxdD3vxKDLR/P8
 76prkwv99B+g1oWMQQEcjg37mv5vS8+tcHqnC0rpelCPhOsoPV9gUKhI++D7rbpGoaF5/nlZ
 JdVrl8iezfif+Z9t6E+5fIQXdJ4XkV8vqBMh2xXCt4uTFwkPRId9kOOPBilBCGHrXOqQAMDW
 u0iYxGkjBmkQNdlWd520KBNFL0r6+q8MmBHKxvVb2pUWfYuPIbU5U3G5n8P2mX2Me9iafe5w
 893gjBc7Sl3kozpj9GOc3jcOHjpRvE/Pi5dWSGoq6WiWP41Ml3QliyazbBEpWsUb6PYkjGG5
 6xEPEIGZuKrCRXx5wdMeHSs+0IUMJMjh8KL8ptIbq1HLrsY/Z8v7GXywbUNcC1G1jLiEgYwx
 ZfMVxgJtBy62juoXwN8ir1NUHY5rvB5brfR+vO73o1dt2eo8z39dduFm8/y/sqPgxXmWx2gf
 qEkMQcf9w+NNX0DpMMlZK5aYY7LIwG0rOz7N1WQ+W1bSEuFEEMgWLnrlPBRx2fWkr7c3nblc
 R7fOyELHvA0Aq8Gfm0Nn5jcRGEX9Q/KUY50hBkcVf+08/5OBur9kp1jOrfbKDDHHmJNzpomT
 nOTbIdh63xlAhAIbFy/Iq6tD7ifqDpibe53jo8nxYe5BYafstgiM8FJZgGgl+bfP38b83c+u
 q7r6B/Y1cu+Be59uVV/X92WPx+zxTR4LUZ9wOJINkfuzyrH8FJdy1gYx3IWpHtmA3oy37sIC
 +Szn/hwz7yeY0kX5+lHctJf6fn/T/CsqtN17wzysPKkgOvHg+z7P1q3zYNrhTykigjgghYkY
 oTEjCuo3/8XckU4UJCQwLOVA
 --------------010001080904050809000706--

Release:
unknown
Comment 1 Neil Booth 2002-08-13 03:59:04 UTC
State-Changed-From-To: open->feedback
State-Changed-Why: Can you please send a coherent bug report?
Comment 2 Neil Booth 2002-08-14 13:57:34 UTC
Responsible-Changed-From-To: unassigned->neil
Responsible-Changed-Why: I fixed it.
Comment 3 Neil Booth 2002-08-14 13:57:34 UTC
State-Changed-From-To: feedback->closed
State-Changed-Why: Fixed.
    
    http://gcc.gnu.org/ml/gcc-patches/2002-08/msg01029.html
Comment 4 Neil Booth 2002-08-14 20:17:55 UTC
From: neil@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: preprocessor/7526
Date: 14 Aug 2002 20:17:55 -0000

 CVSROOT:	/cvs/gcc
 Module name:	gcc
 Changes by:	neil@gcc.gnu.org	2002-08-14 13:17:55
 
 Modified files:
 	gcc            : ChangeLog cpplib.c 
 	gcc/testsuite  : ChangeLog 
 Added files:
 	gcc/testsuite/gcc.dg/cpp: _Pragma3.c 
 
 Log message:
 	PR preprocessor/7526
 	* cpplib.c (run_directive): Kludge so _Pragma dependency works.
 	testsuite:
 	* gcc.dg/cpp/_Pragma3.c: New test.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.15186&r2=1.15187
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cpplib.c.diff?cvsroot=gcc&r1=1.320&r2=1.321
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.2030&r2=1.2031
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/cpp/_Pragma3.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
 
Comment 5 Neil Booth 2002-08-15 19:46:45 UTC
From: neil@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: preprocessor/7526
Date: 15 Aug 2002 19:46:45 -0000

 CVSROOT:	/cvs/gcc
 Module name:	gcc
 Branch: 	gcc-3_2-branch
 Changes by:	neil@gcc.gnu.org	2002-08-15 12:46:44
 
 Modified files:
 	gcc            : ChangeLog cppfiles.c cppinit.c cpplib.h 
 	                 cpplib.c 
 	gcc/testsuite  : ChangeLog 
 	gcc/doc        : cpp.texi cppenv.texi 
 Added files:
 	gcc/testsuite/gcc.dg/cpp: _Pragma3.c vararg3.c vararg4.c 
 
 Log message:
 	PR preprocessor/7358
 	PR preprocessor/7357
 	PR preprocessor/7526
 	* cppfiles.c (stack_include_file): Ignore main file if
 	appropriate.  Correct test of whether a dependency should
 	be output.
 	* cppinit.c (init_dependency_output): Ignore main file
 	for SUNPRO_DEPENDENCIES.
 	(struct lang_flags): Rename trigraphs std.
 	(set_lang): Update.
 	* cpplib.c (run_directive): Kludge so _Pragma dependency works.
 	* cpplib.h (struct cpp_options): New members.
 	* cppmacro.c (collect_args): Flag whether to swallow a possible
 	future comma pasted with varargs.
 	(replace_args): Use this flag.
 	* doc/cpp.texi: Update varargs extension documentation.
 	* doc/cppenv.texi: Update.
 	testsuite:
 	* gcc.dg/cpp/_Pragma3.c, gcc.dg/cpp/vararg3.c, gcc.dg/cpp/vararg4.c:
 	New tests.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.13152.2.657.2.12&r2=1.13152.2.657.2.13
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cppfiles.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.144&r2=1.144.6.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cppinit.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.202.2.5&r2=1.202.2.5.2.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cpplib.h.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.201.2.1&r2=1.201.2.1.4.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cpplib.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.290.2.1&r2=1.290.2.1.4.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.1672.2.166.2.5&r2=1.1672.2.166.2.6
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/cpp.texi.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.24.2.3&r2=1.24.2.3.4.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/cppenv.texi.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.1.2.1&r2=1.1.2.1.4.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/cpp/_Pragma3.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=NONE&r2=1.1.2.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/cpp/vararg3.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=NONE&r2=1.1.8.1
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/cpp/vararg4.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=NONE&r2=1.1.8.1
 

Comment 6 Neil Booth 2002-08-15 19:47:47 UTC
From: neil@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: preprocessor/7526
Date: 15 Aug 2002 19:47:47 -0000

 CVSROOT:	/cvs/gcc
 Module name:	gcc
 Branch: 	gcc-3_2-branch
 Changes by:	neil@gcc.gnu.org	2002-08-15 12:47:46
 
 Modified files:
 	gcc            : cppmacro.c 
 
 Log message:
 	PR preprocessor/7358
 	PR preprocessor/7357
 	PR preprocessor/7526
 	* cppfiles.c (stack_include_file): Ignore main file if
 	appropriate.  Correct test of whether a dependency should
 	be output.
 	* cppinit.c (init_dependency_output): Ignore main file
 	for SUNPRO_DEPENDENCIES.
 	(struct lang_flags): Rename trigraphs std.
 	(set_lang): Update.
 	* cpplib.c (run_directive): Kludge so _Pragma dependency works.
 	* cpplib.h (struct cpp_options): New members.
 	* cppmacro.c (collect_args): Flag whether to swallow a possible
 	future comma pasted with varargs.
 	(replace_args): Use this flag.
 	* doc/cpp.texi: Update varargs extension documentation.
 	* doc/cppenv.texi: Update.
 	testsuite:
 	* gcc.dg/cpp/_Pragma3.c, gcc.dg/cpp/vararg3.c, gcc.dg/cpp/vararg4.c:
 	New tests.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cppmacro.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.91.6.6&r2=1.91.6.6.2.1