Advertisement
Guest User

GCC and LTO on ARM

a guest
Jul 23rd, 2019
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 31.55 KB | None | 0 0
  1. $ cd cryptopp
  2. $ rm *.a *.exe
  3. $ AR=gcc-ar RANLIB=gcc-ranlib CXX=g++ CXXFLAGS="-DNDEBUG -O2 -flto=6 -g -fPIC -pthread" make -j 2
  4. Using testing flags: -DNDEBUG -O2 -flto=6 -g -fPIC -pthread
  5. gcc-ar r libcryptopp.a cryptlib.o cpu.o integer.o 3way.o adler32.o algebra.o algparam.o arc4.o aria.o aria_simd.o ariatab.o asn.o authenc.o base32.o base64.o basecode.o bfinit.o blake2.o blake2b_simd.o blake2s_simd.o blowfish.o blumshub.o camellia.o cast.o casts.o cbcmac.o ccm.o chacha.o chacha_avx.o chacha_simd.o chachapoly.o cham.o cham_simd.o channels.o cmac.o crc.o crc_simd.o darn.o default.o des.o dessp.o dh.o dh2.o dll.o donna_32.o donna_64.o donna_sse.o dsa.o eax.o ec2n.o eccrypto.o ecp.o elgamal.o emsa2.o eprecomp.o esign.o files.o filters.o fips140.o fipstest.o gcm.o gcm_simd.o gf256.o gf2_32.o gf2n.o gf2n_simd.o gfpcrypt.o gost.o gzip.o hc128.o hc256.o hex.o hight.o hmac.o hrtimer.o ida.o idea.o iterhash.o kalyna.o kalynatab.o keccak.o keccak_core.o keccak_simd.o lea.o lea_simd.o luc.o mars.o marss.o md2.o md4.o md5.o misc.o modes.o mqueue.o mqv.o nbtheory.o neon_simd.o oaep.o osrng.o padlkrng.o panama.o pkcspad.o poly1305.o polynomi.o ppc_power7.o ppc_power8.o ppc_power9.o ppc_simd.o pssr.o pubkey.o queue.o rabbit.o rabin.o randpool.o rc2.o rc5.o rc6.o rdrand.o rdtables.o rijndael.o rijndael_simd.o ripemd.o rng.o rsa.o rw.o safer.o salsa.o scrypt.o seal.o seed.o serpent.o sha.o sha3.o sha_simd.o shacal2.o shacal2_simd.o shake.o shark.o sharkbox.o simeck.o simeck_simd.o simon.o simon128_simd.o simon64_simd.o skipjack.o sm3.o sm4.o sm4_simd.o sosemanuk.o speck.o speck128_simd.o speck64_simd.o square.o squaretb.o sse_simd.o strciphr.o tea.o tftables.o threefish.o tiger.o tigertab.o ttmac.o tweetnacl.o twofish.o vmac.o wake.o whrlpool.o xed25519.o xtr.o xtrcrypt.o zdeflate.o zinflate.o zlib.o aes_armv4.o sha1_armv4.o sha256_armv4.o sha512_armv4.o
  6. /usr/bin/ar: creating libcryptopp.a
  7. gcc-ranlib libcryptopp.a
  8. g++ -o cryptest.exe -DNDEBUG -O2 -flto=6 -g -fPIC -pthread adhoc.o test.o bench1.o bench2.o bench3.o datatest.o dlltest.o fipsalgt.o validat0.o validat1.o validat2.o validat3.o validat4.o validat5.o validat6.o validat7.o validat8.o validat9.o validat10.o regtest1.o regtest2.o regtest3.o regtest4.o ./libcryptopp.a
  9. pubkey.h:640:26: warning: type ‘struct TF_ObjectImpl’ violates the C++ One Definition Rule [-Wodr]
  10. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  11. ^
  12. pubkey.h:640:26: note: a different type is defined in another translation unit
  13. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  14. ^
  15. pubkey.h:651:11: note: the first difference of corresponding definitions is field ‘m_trapdoorFunction’
  16. KeyClass m_trapdoorFunction;
  17. ^
  18. pubkey.h:651:11: note: a field of same name but different type is defined in another translation unit
  19. KeyClass m_trapdoorFunction;
  20. ^
  21. pubkey.h:643:20: note: type ‘struct KeyClass’ should match type ‘struct KeyClass’
  22. typedef KEY_CLASS KeyClass;
  23. ^
  24. pubkey.h:678:7: warning: type ‘struct TF_VerifierImpl’ violates the C++ One Definition Rule [-Wodr]
  25. class TF_VerifierImpl : public TF_ObjectImpl<TF_VerifierBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PublicKey>
  26. ^
  27. pubkey.h:678:7: note: a type with different bases is defined in another translation unit
  28. class TF_VerifierImpl : public TF_ObjectImpl<TF_VerifierBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PublicKey>
  29. ^
  30. pubkey.h:2134:26: warning: type ‘struct PK_FinalTemplate’ violates the C++ One Definition Rule [-Wodr]
  31. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  32. ^
  33. pubkey.h:2134:26: note: a type with different bases is defined in another translation unit
  34. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  35. ^
  36. pubkey.h:640:26: warning: type ‘struct TF_ObjectImpl’ violates the C++ One Definition Rule [-Wodr]
  37. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  38. ^
  39. pubkey.h:640:26: note: a different type is defined in another translation unit
  40. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  41. ^
  42. pubkey.h:651:11: note: the first difference of corresponding definitions is field ‘m_trapdoorFunction’
  43. KeyClass m_trapdoorFunction;
  44. ^
  45. pubkey.h:651:11: note: a field of same name but different type is defined in another translation unit
  46. KeyClass m_trapdoorFunction;
  47. ^
  48. pubkey.h:643:20: note: type ‘struct KeyClass’ should match type ‘struct KeyClass’
  49. typedef KEY_CLASS KeyClass;
  50. ^
  51. pubkey.h:664:7: warning: type ‘struct TF_EncryptorImpl’ violates the C++ One Definition Rule [-Wodr]
  52. class TF_EncryptorImpl : public TF_ObjectImpl<TF_EncryptorBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PublicKey>
  53. ^
  54. pubkey.h:664:7: note: a type with different bases is defined in another translation unit
  55. class TF_EncryptorImpl : public TF_ObjectImpl<TF_EncryptorBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PublicKey>
  56. ^
  57. pubkey.h:2134:26: warning: type ‘struct PK_FinalTemplate’ violates the C++ One Definition Rule [-Wodr]
  58. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  59. ^
  60. pubkey.h:2134:26: note: a type with different bases is defined in another translation unit
  61. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  62. ^
  63. pubkey.h:640:26: warning: type ‘struct TF_ObjectImpl’ violates the C++ One Definition Rule [-Wodr]
  64. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  65. ^
  66. pubkey.h:640:26: note: a different type is defined in another translation unit
  67. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  68. ^
  69. pubkey.h:651:11: note: the first difference of corresponding definitions is field ‘m_trapdoorFunction’
  70. KeyClass m_trapdoorFunction;
  71. ^
  72. pubkey.h:651:11: note: a field of same name but different type is defined in another translation unit
  73. KeyClass m_trapdoorFunction;
  74. ^
  75. pubkey.h:643:20: note: type ‘struct KeyClass’ should match type ‘struct KeyClass’
  76. typedef KEY_CLASS KeyClass;
  77. ^
  78. pubkey.h:671:7: warning: type ‘struct TF_SignerImpl’ violates the C++ One Definition Rule [-Wodr]
  79. class TF_SignerImpl : public TF_ObjectImpl<TF_SignerBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PrivateKey>
  80. ^
  81. pubkey.h:671:7: note: a type with different bases is defined in another translation unit
  82. class TF_SignerImpl : public TF_ObjectImpl<TF_SignerBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PrivateKey>
  83. ^
  84. pubkey.h:2134:26: warning: type ‘struct PK_FinalTemplate’ violates the C++ One Definition Rule [-Wodr]
  85. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  86. ^
  87. pubkey.h:2134:26: note: a type with different bases is defined in another translation unit
  88. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  89. ^
  90. pubkey.h:640:26: warning: type ‘struct TF_ObjectImpl’ violates the C++ One Definition Rule [-Wodr]
  91. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  92. ^
  93. pubkey.h:640:26: note: a different type is defined in another translation unit
  94. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  95. ^
  96. pubkey.h:651:11: note: the first difference of corresponding definitions is field ‘m_trapdoorFunction’
  97. KeyClass m_trapdoorFunction;
  98. ^
  99. pubkey.h:651:11: note: a field of same name but different type is defined in another translation unit
  100. KeyClass m_trapdoorFunction;
  101. ^
  102. pubkey.h:643:20: note: type ‘struct KeyClass’ should match type ‘struct KeyClass’
  103. typedef KEY_CLASS KeyClass;
  104. ^
  105. pubkey.h:657:7: warning: type ‘struct TF_DecryptorImpl’ violates the C++ One Definition Rule [-Wodr]
  106. class TF_DecryptorImpl : public TF_ObjectImpl<TF_DecryptorBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PrivateKey>
  107. ^
  108. pubkey.h:657:7: note: a type with different bases is defined in another translation unit
  109. class TF_DecryptorImpl : public TF_ObjectImpl<TF_DecryptorBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PrivateKey>
  110. ^
  111. pubkey.h:2134:26: warning: type ‘struct PK_FinalTemplate’ violates the C++ One Definition Rule [-Wodr]
  112. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  113. ^
  114. pubkey.h:2134:26: note: a type with different bases is defined in another translation unit
  115. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  116. ^
  117. pubkey.h:2145:2: warning: ‘__comp_ctor ’ violates the C++ One Definition Rule [-Wodr]
  118. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  119. ^
  120. pubkey.h:2145:2: note: return value type mismatch
  121. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  122. ^
  123. pubkey.h:2134:26: note: type ‘struct PK_FinalTemplate’ itself violate the C++ One Definition Rule
  124. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  125. ^
  126. pubkey.h:2145:2: note: ‘__comp_ctor ’ was previously declared here
  127. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  128. ^
  129. pubkey.h:2145:2: warning: ‘__base_ctor ’ violates the C++ One Definition Rule [-Wodr]
  130. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  131. ^
  132. pubkey.h:2145:2: note: return value type mismatch
  133. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  134. ^
  135. pubkey.h:2134:26: note: type ‘struct PK_FinalTemplate’ itself violate the C++ One Definition Rule
  136. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  137. ^
  138. pubkey.h:2145:2: note: ‘__base_ctor ’ was previously declared here
  139. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  140. ^
  141. pubkey.h:645:10: warning: ‘__deleting_dtor ’ violates the C++ One Definition Rule [-Wodr]
  142. virtual ~TF_ObjectImpl() {}
  143. ^
  144. pubkey.h:645:10: note: implicit this pointer type mismatch
  145. virtual ~TF_ObjectImpl() {}
  146. ^
  147. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  148. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  149. ^
  150. pubkey.h:645:10: note: ‘__deleting_dtor ’ was previously declared here
  151. virtual ~TF_ObjectImpl() {}
  152. ^
  153. pubkey.h:645:10: warning: ‘__comp_dtor ’ violates the C++ One Definition Rule [-Wodr]
  154. virtual ~TF_ObjectImpl() {}
  155. ^
  156. pubkey.h:645:10: note: implicit this pointer type mismatch
  157. virtual ~TF_ObjectImpl() {}
  158. ^
  159. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  160. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  161. ^
  162. pubkey.h:645:10: note: ‘__comp_dtor ’ was previously declared here
  163. virtual ~TF_ObjectImpl() {}
  164. ^
  165. pubkey.h:645:10: warning: ‘__base_dtor ’ violates the C++ One Definition Rule [-Wodr]
  166. virtual ~TF_ObjectImpl() {}
  167. ^
  168. pubkey.h:645:10: note: implicit this pointer type mismatch
  169. virtual ~TF_ObjectImpl() {}
  170. ^
  171. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  172. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  173. ^
  174. pubkey.h:645:10: note: ‘__base_dtor ’ was previously declared here
  175. virtual ~TF_ObjectImpl() {}
  176. ^
  177. pubkey.h:645:10: warning: ‘__deleting_dtor ’ violates the C++ One Definition Rule [-Wodr]
  178. virtual ~TF_ObjectImpl() {}
  179. ^
  180. pubkey.h:645:10: note: implicit this pointer type mismatch
  181. virtual ~TF_ObjectImpl() {}
  182. ^
  183. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  184. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  185. ^
  186. pubkey.h:645:10: note: ‘__deleting_dtor ’ was previously declared here
  187. virtual ~TF_ObjectImpl() {}
  188. ^
  189. pubkey.h:645:10: warning: ‘__comp_dtor ’ violates the C++ One Definition Rule [-Wodr]
  190. virtual ~TF_ObjectImpl() {}
  191. ^
  192. pubkey.h:645:10: note: implicit this pointer type mismatch
  193. virtual ~TF_ObjectImpl() {}
  194. ^
  195. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  196. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  197. ^
  198. pubkey.h:645:10: note: ‘__comp_dtor ’ was previously declared here
  199. virtual ~TF_ObjectImpl() {}
  200. ^
  201. pubkey.h:645:10: warning: ‘__base_dtor ’ violates the C++ One Definition Rule [-Wodr]
  202. virtual ~TF_ObjectImpl() {}
  203. ^
  204. pubkey.h:645:10: note: implicit this pointer type mismatch
  205. virtual ~TF_ObjectImpl() {}
  206. ^
  207. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  208. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  209. ^
  210. pubkey.h:645:10: note: ‘__base_dtor ’ was previously declared here
  211. virtual ~TF_ObjectImpl() {}
  212. ^
  213. pubkey.h:2145:2: warning: ‘__comp_ctor ’ violates the C++ One Definition Rule [-Wodr]
  214. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  215. ^
  216. pubkey.h:2145:2: note: return value type mismatch
  217. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  218. ^
  219. pubkey.h:2134:26: note: type ‘struct PK_FinalTemplate’ itself violate the C++ One Definition Rule
  220. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  221. ^
  222. pubkey.h:2145:2: note: ‘__comp_ctor ’ was previously declared here
  223. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  224. ^
  225. pubkey.h:2145:2: warning: ‘__base_ctor ’ violates the C++ One Definition Rule [-Wodr]
  226. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  227. ^
  228. pubkey.h:2145:2: note: return value type mismatch
  229. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  230. ^
  231. pubkey.h:2134:26: note: type ‘struct PK_FinalTemplate’ itself violate the C++ One Definition Rule
  232. class CRYPTOPP_NO_VTABLE PK_FinalTemplate : public BASE
  233. ^
  234. pubkey.h:2145:2: note: ‘__base_ctor ’ was previously declared here
  235. PK_FinalTemplate(const AsymmetricAlgorithm &algorithm)
  236. ^
  237. pubkey.h:645:10: warning: ‘__deleting_dtor ’ violates the C++ One Definition Rule [-Wodr]
  238. virtual ~TF_ObjectImpl() {}
  239. ^
  240. pubkey.h:645:10: note: implicit this pointer type mismatch
  241. virtual ~TF_ObjectImpl() {}
  242. ^
  243. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  244. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  245. ^
  246. pubkey.h:645:10: note: ‘__deleting_dtor ’ was previously declared here
  247. virtual ~TF_ObjectImpl() {}
  248. ^
  249. pubkey.h:645:10: warning: ‘__comp_dtor ’ violates the C++ One Definition Rule [-Wodr]
  250. virtual ~TF_ObjectImpl() {}
  251. ^
  252. pubkey.h:645:10: note: implicit this pointer type mismatch
  253. virtual ~TF_ObjectImpl() {}
  254. ^
  255. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  256. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  257. ^
  258. pubkey.h:645:10: note: ‘__comp_dtor ’ was previously declared here
  259. virtual ~TF_ObjectImpl() {}
  260. ^
  261. pubkey.h:645:10: warning: ‘__base_dtor ’ violates the C++ One Definition Rule [-Wodr]
  262. virtual ~TF_ObjectImpl() {}
  263. ^
  264. pubkey.h:645:10: note: implicit this pointer type mismatch
  265. virtual ~TF_ObjectImpl() {}
  266. ^
  267. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  268. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  269. ^
  270. pubkey.h:645:10: note: ‘__base_dtor ’ was previously declared here
  271. virtual ~TF_ObjectImpl() {}
  272. ^
  273. pubkey.h:645:10: warning: ‘__deleting_dtor ’ violates the C++ One Definition Rule [-Wodr]
  274. virtual ~TF_ObjectImpl() {}
  275. ^
  276. pubkey.h:645:10: note: implicit this pointer type mismatch
  277. virtual ~TF_ObjectImpl() {}
  278. ^
  279. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  280. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  281. ^
  282. pubkey.h:645:10: note: ‘__deleting_dtor ’ was previously declared here
  283. virtual ~TF_ObjectImpl() {}
  284. ^
  285. pubkey.h:645:10: warning: ‘__comp_dtor ’ violates the C++ One Definition Rule [-Wodr]
  286. virtual ~TF_ObjectImpl() {}
  287. ^
  288. pubkey.h:645:10: note: implicit this pointer type mismatch
  289. virtual ~TF_ObjectImpl() {}
  290. ^
  291. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  292. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  293. ^
  294. pubkey.h:645:10: note: ‘__comp_dtor ’ was previously declared here
  295. virtual ~TF_ObjectImpl() {}
  296. ^
  297. pubkey.h:645:10: warning: ‘__base_dtor ’ violates the C++ One Definition Rule [-Wodr]
  298. virtual ~TF_ObjectImpl() {}
  299. ^
  300. pubkey.h:645:10: note: implicit this pointer type mismatch
  301. virtual ~TF_ObjectImpl() {}
  302. ^
  303. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  304. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  305. ^
  306. pubkey.h:645:10: note: ‘__base_dtor ’ was previously declared here
  307. virtual ~TF_ObjectImpl() {}
  308. ^
  309. pubkey.h:647:19: warning: ‘GetKey’ violates the C++ One Definition Rule [-Wodr]
  310. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  311. ^
  312. pubkey.h:647:19: note: ‘GetKey’ was previously declared here
  313. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  314. ^
  315. pubkey.h:647:19: warning: ‘GetKey’ violates the C++ One Definition Rule [-Wodr]
  316. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  317. ^
  318. pubkey.h:647:19: note: ‘GetKey’ was previously declared here
  319. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  320. ^
  321. pubkey.h:647:19: warning: ‘GetKey’ violates the C++ One Definition Rule [-Wodr]
  322. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  323. ^
  324. pubkey.h:647:19: note: ‘GetKey’ was previously declared here
  325. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  326. ^
  327. pubkey.h:647:19: warning: ‘GetKey’ violates the C++ One Definition Rule [-Wodr]
  328. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  329. ^
  330. pubkey.h:647:19: note: ‘GetKey’ was previously declared here
  331. const KeyClass & GetKey() const {return m_trapdoorFunction;}
  332. ^
  333. pubkey.h:648:13: warning: ‘AccessKey’ violates the C++ One Definition Rule [-Wodr]
  334. KeyClass & AccessKey() {return m_trapdoorFunction;}
  335. ^
  336. pubkey.h:648:13: note: implicit this pointer type mismatch
  337. KeyClass & AccessKey() {return m_trapdoorFunction;}
  338. ^
  339. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  340. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  341. ^
  342. pubkey.h:648:13: note: ‘AccessKey’ was previously declared here
  343. KeyClass & AccessKey() {return m_trapdoorFunction;}
  344. ^
  345. pubkey.h:648:13: warning: ‘AccessKey’ violates the C++ One Definition Rule [-Wodr]
  346. KeyClass & AccessKey() {return m_trapdoorFunction;}
  347. ^
  348. pubkey.h:648:13: note: implicit this pointer type mismatch
  349. KeyClass & AccessKey() {return m_trapdoorFunction;}
  350. ^
  351. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  352. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  353. ^
  354. pubkey.h:648:13: note: ‘AccessKey’ was previously declared here
  355. KeyClass & AccessKey() {return m_trapdoorFunction;}
  356. ^
  357. pubkey.h:648:13: warning: ‘AccessKey’ violates the C++ One Definition Rule [-Wodr]
  358. KeyClass & AccessKey() {return m_trapdoorFunction;}
  359. ^
  360. pubkey.h:648:13: note: implicit this pointer type mismatch
  361. KeyClass & AccessKey() {return m_trapdoorFunction;}
  362. ^
  363. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  364. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  365. ^
  366. pubkey.h:648:13: note: ‘AccessKey’ was previously declared here
  367. KeyClass & AccessKey() {return m_trapdoorFunction;}
  368. ^
  369. pubkey.h:648:13: warning: ‘AccessKey’ violates the C++ One Definition Rule [-Wodr]
  370. KeyClass & AccessKey() {return m_trapdoorFunction;}
  371. ^
  372. pubkey.h:648:13: note: implicit this pointer type mismatch
  373. KeyClass & AccessKey() {return m_trapdoorFunction;}
  374. ^
  375. pubkey.h:640:26: note: type ‘struct TF_ObjectImpl’ itself violate the C++ One Definition Rule
  376. class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
  377. ^
  378. pubkey.h:648:13: note: ‘AccessKey’ was previously declared here
  379. KeyClass & AccessKey() {return m_trapdoorFunction;}
  380. ^
  381. xtrcrypt.h:15:7: warning: virtual table of type ‘struct XTR_DH’ violates one definition rule [-Wodr]
  382. class XTR_DH : public SimpleKeyAgreementDomain, public CryptoParameters
  383. ^
  384. xtrcrypt.h:15:7: note: the conflicting type defined in another translation unit with different RTTI information
  385. class XTR_DH : public SimpleKeyAgreementDomain, public CryptoParameters
  386. ^
  387. xed25519.h:625:8: warning: virtual table of type ‘struct ed25519PublicKey’ violates one definition rule [-Wodr]
  388. struct ed25519PublicKey : public X509PublicKey
  389. ^
  390. xed25519.h:625:8: note: the conflicting type defined in another translation unit with different RTTI information
  391. struct ed25519PublicKey : public X509PublicKey
  392. ^
  393. xed25519.h:355:8: warning: virtual table of type ‘struct ed25519PrivateKey’ violates one definition rule [-Wodr]
  394. struct ed25519PrivateKey : public PKCS8PrivateKey
  395. ^
  396. xed25519.h:355:8: note: the conflicting type defined in another translation unit with different RTTI information
  397. struct ed25519PrivateKey : public PKCS8PrivateKey
  398. ^
  399. xed25519.h:54:7: warning: virtual table of type ‘struct x25519’ violates one definition rule [-Wodr]
  400. class x25519 : public SimpleKeyAgreementDomain, public CryptoParameters, public PKCS8PrivateKey
  401. ^
  402. xed25519.h:54:7: note: the conflicting type defined in another translation unit with different RTTI information
  403. class x25519 : public SimpleKeyAgreementDomain, public CryptoParameters, public PKCS8PrivateKey
  404. ^
  405. rw.h:23:20: warning: virtual table of type ‘struct RWFunction’ violates one definition rule [-Wodr]
  406. class CRYPTOPP_DLL RWFunction : public TrapdoorFunction, public PublicKey
  407. ^
  408. rw.h:23:20: note: the conflicting type defined in another translation unit with different RTTI information
  409. class CRYPTOPP_DLL RWFunction : public TrapdoorFunction, public PublicKey
  410. ^
  411. rw.h:59:20: warning: virtual table of type ‘struct InvertibleRWFunction’ violates one definition rule [-Wodr]
  412. class CRYPTOPP_DLL InvertibleRWFunction : public RWFunction, public TrapdoorFunctionInverse, public PrivateKey
  413. ^
  414. rw.h:59:20: note: the conflicting type defined in another translation unit with different RTTI information
  415. class CRYPTOPP_DLL InvertibleRWFunction : public RWFunction, public TrapdoorFunctionInverse, public PrivateKey
  416. ^
  417. rsa.h:23:20: warning: virtual table of type ‘struct RSAFunction’ violates one definition rule [-Wodr]
  418. class CRYPTOPP_DLL RSAFunction : public TrapdoorFunction, public X509PublicKey
  419. ^
  420. rsa.h:23:20: note: the conflicting type defined in another translation unit with different RTTI information
  421. class CRYPTOPP_DLL RSAFunction : public TrapdoorFunction, public X509PublicKey
  422. ^
  423. rsa.h:151:20: warning: virtual table of type ‘struct InvertibleRSAFunction_ISO’ violates one definition rule [-Wodr]
  424. class CRYPTOPP_DLL InvertibleRSAFunction_ISO : public InvertibleRSAFunction
  425. ^
  426. rsa.h:151:20: note: the conflicting type defined in another translation unit with different RTTI information
  427. class CRYPTOPP_DLL InvertibleRSAFunction_ISO : public InvertibleRSAFunction
  428. ^
  429. rsa.h:62:20: warning: virtual table of type ‘struct InvertibleRSAFunction’ violates one definition rule [-Wodr]
  430. class CRYPTOPP_DLL InvertibleRSAFunction : public RSAFunction, public TrapdoorFunctionInverse, public PKCS8PrivateKey
  431. ^
  432. rsa.h:62:20: note: the conflicting type defined in another translation unit with different RTTI information
  433. class CRYPTOPP_DLL InvertibleRSAFunction : public RSAFunction, public TrapdoorFunctionInverse, public PKCS8PrivateKey
  434. ^
  435. rsa.h:142:20: warning: virtual table of type ‘struct RSAFunction_ISO’ violates one definition rule [-Wodr]
  436. class CRYPTOPP_DLL RSAFunction_ISO : public RSAFunction
  437. ^
  438. rsa.h:142:20: note: the conflicting type defined in another translation unit with different RTTI information
  439. class CRYPTOPP_DLL RSAFunction_ISO : public RSAFunction
  440. ^
  441. rabin.h:18:7: warning: virtual table of type ‘struct RabinFunction’ violates one definition rule [-Wodr]
  442. class RabinFunction : public TrapdoorFunction, public PublicKey
  443. ^
  444. rabin.h:18:7: note: the conflicting type defined in another translation unit with different RTTI information
  445. class RabinFunction : public TrapdoorFunction, public PublicKey
  446. ^
  447. rabin.h:56:7: warning: virtual table of type ‘struct InvertibleRabinFunction’ violates one definition rule [-Wodr]
  448. class InvertibleRabinFunction : public RabinFunction, public TrapdoorFunctionInverse, public PrivateKey
  449. ^
  450. rabin.h:56:7: note: the conflicting type defined in another translation unit with different RTTI information
  451. class InvertibleRabinFunction : public RabinFunction, public TrapdoorFunctionInverse, public PrivateKey
  452. ^
  453. luc.h:38:7: warning: virtual table of type ‘struct LUCFunction’ violates one definition rule [-Wodr]
  454. class LUCFunction : public TrapdoorFunction, public PublicKey
  455. ^
  456. luc.h:38:7: note: the conflicting type defined in another translation unit with different RTTI information
  457. class LUCFunction : public TrapdoorFunction, public PublicKey
  458. ^
  459. luc.h:223:7: warning: virtual table of type ‘struct DL_GroupParameters_LUC’ violates one definition rule [-Wodr]
  460. class DL_GroupParameters_LUC : public DL_GroupParameters_IntegerBasedImpl<DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC>
  461. ^
  462. luc.h:223:7: note: the conflicting type defined in another translation unit with different RTTI information
  463. class DL_GroupParameters_LUC : public DL_GroupParameters_IntegerBasedImpl<DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC>
  464. ^
  465. luc.h:78:7: warning: virtual table of type ‘struct InvertibleLUCFunction’ violates one definition rule [-Wodr]
  466. class InvertibleLUCFunction : public LUCFunction, public TrapdoorFunctionInverse, public PrivateKey
  467. ^
  468. luc.h:78:7: note: the conflicting type defined in another translation unit with different RTTI information
  469. class InvertibleLUCFunction : public LUCFunction, public TrapdoorFunctionInverse, public PrivateKey
  470. ^
  471. gfpcrypt.h:156:20: warning: virtual table of type ‘struct DL_GroupParameters_GFP’ violates one definition rule [-Wodr]
  472. class CRYPTOPP_DLL DL_GroupParameters_GFP : public DL_GroupParameters_IntegerBasedImpl<ModExpPrecomputation>
  473. ^
  474. gfpcrypt.h:156:20: note: the conflicting type defined in another translation unit with different RTTI information
  475. class CRYPTOPP_DLL DL_GroupParameters_GFP : public DL_GroupParameters_IntegerBasedImpl<ModExpPrecomputation>
  476. ^
  477. gfpcrypt.h:601:20: warning: virtual table of type ‘struct DL_GroupParameters_DSA’ violates one definition rule [-Wodr]
  478. class CRYPTOPP_DLL DL_GroupParameters_DSA : public DL_GroupParameters_GFP
  479. ^
  480. gfpcrypt.h:601:20: note: the conflicting type defined in another translation unit with different RTTI information
  481. class CRYPTOPP_DLL DL_GroupParameters_DSA : public DL_GroupParameters_GFP
  482. ^
  483. esign.h:20:7: warning: virtual table of type ‘struct ESIGNFunction’ violates one definition rule [-Wodr]
  484. class ESIGNFunction : public TrapdoorFunction, public ASN1CryptoMaterial<PublicKey>
  485. ^
  486. esign.h:20:7: note: the conflicting type defined in another translation unit with different RTTI information
  487. class ESIGNFunction : public TrapdoorFunction, public ASN1CryptoMaterial<PublicKey>
  488. ^
  489. esign.h:62:7: warning: virtual table of type ‘struct InvertibleESIGNFunction’ violates one definition rule [-Wodr]
  490. class InvertibleESIGNFunction : public ESIGNFunction, public RandomizedTrapdoorFunctionInverse, public PrivateKey
  491. ^
  492. esign.h:62:7: note: the conflicting type defined in another translation unit with different RTTI information
  493. class InvertibleESIGNFunction : public ESIGNFunction, public RandomizedTrapdoorFunctionInverse, public PrivateKey
  494. ^
  495. hmac.h:52:7: warning: virtual table of type ‘struct HMAC’ violates one definition rule [-Wodr]
  496. class HMAC : public MessageAuthenticationCodeImpl<HMAC_Base, HMAC<T> >
  497. ^
  498. hmac.h:52:7: note: the conflicting type defined in another translation unit
  499. class HMAC : public MessageAuthenticationCodeImpl<HMAC_Base, HMAC<T> >
  500. ^
  501. hmac.h:69:14: note: virtual method ‘_ZThn4_NK8CryptoPP4HMACINS_6SHA512EE13AlgorithmNameEv’
  502. std::string AlgorithmName() const {return std::string("HMAC(") + m_hash.AlgorithmName() + ")";}
  503. ^
  504. hmac.h:69:14: note: ought to match virtual method ‘_ZThn4_NK8CryptoPP4HMACINS_6SHA512EE13AlgorithmNameB5cxx11Ev’ but does not
  505. std::string AlgorithmName() const {return std::string("HMAC(") + m_hash.AlgorithmName() + ")";}
  506. ^
  507. hmac.h:52:7: warning: virtual table of type ‘struct HMAC’ violates one definition rule [-Wodr]
  508. class HMAC : public MessageAuthenticationCodeImpl<HMAC_Base, HMAC<T> >
  509. ^
  510. hmac.h:52:7: note: the conflicting type defined in another translation unit
  511. class HMAC : public MessageAuthenticationCodeImpl<HMAC_Base, HMAC<T> >
  512. ^
  513. hmac.h:69:14: note: virtual method ‘_ZThn4_NK8CryptoPP4HMACINS_9WhirlpoolEE13AlgorithmNameEv’
  514. std::string AlgorithmName() const {return std::string("HMAC(") + m_hash.AlgorithmName() + ")";}
  515. ^
  516. hmac.h:69:14: note: ought to match virtual method ‘_ZThn4_NK8CryptoPP4HMACINS_9WhirlpoolEE13AlgorithmNameB5cxx11Ev’ but does not
  517. std::string AlgorithmName() const {return std::string("HMAC(") + m_hash.AlgorithmName() + ")";}
  518. ^
  519. $
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement