Advertisement
Guest User

Untitled

a guest
Jun 30th, 2019
428
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 95.36 KB | None | 0 0
  1. This file contains any messages produced by compilers while
  2. running configure, to aid debugging if configure makes a mistake.
  3.  
  4. It was created by libsigc++ configure 2.10.2, which was
  5. generated by GNU Autoconf 2.69. Invocation command line was
  6.  
  7. $ ./configure
  8.  
  9. ## --------- ##
  10. ## Platform. ##
  11. ## --------- ##
  12.  
  13. hostname = HP-BIG-DESK
  14. uname -m = x86_64
  15. uname -r = 3.0.7(0.338/5/3)
  16. uname -s = CYGWIN_NT-10.0
  17. uname -v = 2019-04-30 18:08
  18.  
  19. /usr/bin/uname -p = unknown
  20. /bin/uname -X = unknown
  21.  
  22. /bin/arch = x86_64
  23. /usr/bin/arch -k = unknown
  24. /usr/convex/getsysinfo = unknown
  25. /usr/bin/hostinfo = unknown
  26. /bin/machine = unknown
  27. /usr/bin/oslevel = unknown
  28. /bin/universe = unknown
  29.  
  30. PATH: /usr/local/bin
  31. PATH: /usr/bin
  32. PATH: /cygdrive/c/Program Files (x86)/Intel/iCLS Client
  33. PATH: /cygdrive/c/Program Files/Intel/iCLS Client
  34. PATH: /cygdrive/c/WINDOWS/system32
  35. PATH: /cygdrive/c/WINDOWS
  36. PATH: /cygdrive/c/WINDOWS/System32/Wbem
  37. PATH: /cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0
  38. PATH: /cygdrive/c/Program Files/MiKTeX 2.9/miktex/bin/x64
  39. PATH: /cygdrive/c/WINDOWS/System32/OpenSSH
  40. PATH: /cygdrive/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL
  41. PATH: /cygdrive/c/Program Files/Intel/Intel(R) Management Engine Components/DAL
  42. PATH: /cygdrive/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/IPT
  43. PATH: /cygdrive/c/Program Files/Intel/Intel(R) Management Engine Components/IPT
  44. PATH: /cygdrive/c/Program Files (x86)/PDFtk/bin
  45. PATH: /cygdrive/c/Users/admin/AppData/Local/Microsoft/WindowsApps
  46.  
  47.  
  48. ## ----------- ##
  49. ## Core tests. ##
  50. ## ----------- ##
  51.  
  52. configure:2420: checking for a BSD-compatible install
  53. configure:2488: result: /usr/bin/install -c
  54. configure:2499: checking whether build environment is sane
  55. configure:2554: result: yes
  56. configure:2705: checking for a thread-safe mkdir -p
  57. configure:2744: result: /usr/bin/mkdir -p
  58. configure:2751: checking for gawk
  59. configure:2767: found /usr/bin/gawk
  60. configure:2778: result: gawk
  61. configure:2789: checking whether make sets $(MAKE)
  62. configure:2811: result: yes
  63. configure:2840: checking whether make supports nested variables
  64. configure:2857: result: yes
  65. configure:2937: checking whether UID '197609' is supported by ustar format
  66. configure:2940: result: yes
  67. configure:2947: checking whether GID '197121' is supported by ustar format
  68. configure:2950: result: yes
  69. configure:2958: checking how to create a ustar tar archive
  70. configure:2969: tar --version
  71. tar (GNU tar) 1.29
  72. Packaged by Cygwin (1.29-1)
  73. Copyright (C) 2015 Free Software Foundation, Inc.
  74. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
  75. This is free software: you are free to change and redistribute it.
  76. There is NO WARRANTY, to the extent permitted by law.
  77.  
  78. Written by John Gilmore and Jay Fenlason.
  79. configure:2972: $? = 0
  80. configure:3012: tardir=conftest.dir && eval tar --format=ustar -chf - "$tardir" >conftest.tar
  81. configure:3015: $? = 0
  82. configure:3019: tar -xf - <conftest.tar
  83. configure:3022: $? = 0
  84. configure:3024: cat conftest.dir/file
  85. GrepMe
  86. configure:3027: $? = 0
  87. configure:3040: result: gnutar
  88. configure:3103: checking whether make supports nested variables
  89. configure:3120: result: yes
  90. configure:3132: checking whether to enable maintainer-specific portions of Makefiles
  91. configure:3141: result: no
  92. configure:3158: checking whether make supports GNU make features
  93. test 'success' = success
  94. configure:3172: result: yes
  95. configure:3271: checking for g++
  96. configure:3287: found /usr/bin/g++
  97. configure:3298: result: g++
  98. configure:3325: checking for C++ compiler version
  99. configure:3334: g++ --version >&5
  100. g++ (GCC) 8.3.0
  101. Copyright (C) 2018 Free Software Foundation, Inc.
  102. This is free software; see the source for copying conditions. There is NO
  103. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  104.  
  105. configure:3345: $? = 0
  106. configure:3334: g++ -v >&5
  107. Using built-in specs.
  108. COLLECT_GCC=g++
  109. COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/8.3.0/lto-wrapper.exe
  110. Target: x86_64-pc-cygwin
  111. Configured with: /cygdrive/i/szsz/tmpp/gcc/gcc-8.3.0-1.x86_64/src/gcc-8.3.0/configure --srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-8.3.0-1.x86_64/src/gcc-8.3.0 --prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc --docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C --build=x86_64-pc-cygwin --host=x86_64-pc-cygwin --target=x86_64-pc-cygwin --without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib --enable-shared --enable-shared-libgcc --enable-static --enable-version-specific-runtime-libs --enable-bootstrap --enable-__cxa_atexit --with-dwarf2 --with-tune=generic --enable-languages=ada,c,c++,fortran,lto,objc,obj-c++ --enable-graphite --enable-threads=posix --enable-libatomic --enable-libgomp --enable-libitm --enable-libquadmath --enable-libquadmath-support --disable-libssp --enable-libada --disable-symvers --with-gnu-ld --with-gnu-as --with-cloog-include=/usr/include/cloog-isl --without-libiconv-prefix --without-libintl-prefix --with-system-zlib --enable-linker-build-id --with-default-libstdcxx-abi=gcc4-compatible --enable-libstdcxx-filesystem-ts
  112. Thread model: posix
  113. gcc version 8.3.0 (GCC)
  114. configure:3345: $? = 0
  115. configure:3334: g++ -V >&5
  116. g++: error: unrecognized command line option '-V'
  117. g++: fatal error: no input files
  118. compilation terminated.
  119. configure:3345: $? = 1
  120. configure:3334: g++ -qversion >&5
  121. g++: error: unrecognized command line option '-qversion'; did you mean '--version'?
  122. g++: fatal error: no input files
  123. compilation terminated.
  124. configure:3345: $? = 1
  125. configure:3365: checking whether the C++ compiler works
  126. configure:3387: g++ conftest.cpp >&5
  127. configure:3391: $? = 0
  128. configure:3439: result: yes
  129. configure:3442: checking for C++ compiler default output file name
  130. configure:3444: result: a.exe
  131. configure:3450: checking for suffix of executables
  132. configure:3457: g++ -o conftest.exe conftest.cpp >&5
  133. configure:3461: $? = 0
  134. configure:3483: result: .exe
  135. configure:3505: checking whether we are cross compiling
  136. configure:3513: g++ -o conftest.exe conftest.cpp >&5
  137. configure:3517: $? = 0
  138. configure:3524: ./conftest.exe
  139. configure:3528: $? = 0
  140. configure:3543: result: no
  141. configure:3548: checking for suffix of object files
  142. configure:3570: g++ -c conftest.cpp >&5
  143. configure:3574: $? = 0
  144. configure:3595: result: o
  145. configure:3599: checking whether we are using the GNU C++ compiler
  146. configure:3618: g++ -c conftest.cpp >&5
  147. configure:3618: $? = 0
  148. configure:3627: result: yes
  149. configure:3636: checking whether g++ accepts -g
  150. configure:3656: g++ -c -g conftest.cpp >&5
  151. configure:3656: $? = 0
  152. configure:3697: result: yes
  153. configure:3723: checking whether make supports the include directive
  154. configure:3738: make -f confmf.GNU && cat confinc.out
  155. this is the am__doit target
  156. configure:3741: $? = 0
  157. configure:3760: result: yes (GNU style)
  158. configure:3785: checking dependency style of g++
  159. configure:3896: result: gcc3
  160. configure:3919: checking whether g++ supports C++11 features by default
  161. configure:4213: g++ -c -g -O2 conftest.cpp >&5
  162. /tmp/ccFrbSUQ.s: Assembler messages:
  163. /tmp/ccFrbSUQ.s:12: Error: unknown .loc sub-directive `view'
  164. /tmp/ccFrbSUQ.s:12: Error: junk at end of line, first unrecognized character is `-'
  165. /tmp/ccFrbSUQ.s:15: Error: unknown .loc sub-directive `view'
  166. /tmp/ccFrbSUQ.s:15: Error: unknown pseudo-op: `.lvu1'
  167. /tmp/ccFrbSUQ.s:17: Error: unknown .loc sub-directive `view'
  168. /tmp/ccFrbSUQ.s:17: Error: unknown pseudo-op: `.lvu2'
  169. /tmp/ccFrbSUQ.s:18: Error: unknown .loc sub-directive `view'
  170. /tmp/ccFrbSUQ.s:18: Error: unknown pseudo-op: `.lvu3'
  171. /tmp/ccFrbSUQ.s:19: Error: unknown .loc sub-directive `view'
  172. /tmp/ccFrbSUQ.s:19: Error: unknown pseudo-op: `.lvu4'
  173. /tmp/ccFrbSUQ.s:32: Error: unknown .loc sub-directive `view'
  174. /tmp/ccFrbSUQ.s:32: Error: junk at end of line, first unrecognized character is `-'
  175. /tmp/ccFrbSUQ.s:34: Error: unknown .loc sub-directive `view'
  176. /tmp/ccFrbSUQ.s:34: Error: unknown pseudo-op: `.lvu6'
  177. /tmp/ccFrbSUQ.s:36: Error: unknown .loc sub-directive `view'
  178. /tmp/ccFrbSUQ.s:36: Error: unknown pseudo-op: `.lvu7'
  179. /tmp/ccFrbSUQ.s:37: Error: unknown .loc sub-directive `view'
  180. /tmp/ccFrbSUQ.s:37: Error: unknown pseudo-op: `.lvu8'
  181. /tmp/ccFrbSUQ.s:38: Error: unknown .loc sub-directive `view'
  182. /tmp/ccFrbSUQ.s:38: Error: unknown pseudo-op: `.lvu9'
  183. /tmp/ccFrbSUQ.s:39: Error: unknown .loc sub-directive `view'
  184. /tmp/ccFrbSUQ.s:39: Error: unknown pseudo-op: `.lvu10'
  185. /tmp/ccFrbSUQ.s:41: Error: unknown .loc sub-directive `view'
  186. /tmp/ccFrbSUQ.s:41: Error: unknown pseudo-op: `.lvu11'
  187. /tmp/ccFrbSUQ.s:42: Error: unknown .loc sub-directive `view'
  188. /tmp/ccFrbSUQ.s:42: Error: unknown pseudo-op: `.lvu12'
  189. /tmp/ccFrbSUQ.s:44: Error: unknown .loc sub-directive `view'
  190. /tmp/ccFrbSUQ.s:44: Error: unknown pseudo-op: `.lvu13'
  191. /tmp/ccFrbSUQ.s:46: Error: unknown .loc sub-directive `view'
  192. /tmp/ccFrbSUQ.s:46: Error: unknown pseudo-op: `.lvu14'
  193. /tmp/ccFrbSUQ.s:49: Error: unknown .loc sub-directive `view'
  194. /tmp/ccFrbSUQ.s:49: Error: unknown pseudo-op: `.lvu15'
  195. /tmp/ccFrbSUQ.s:50: Error: unknown .loc sub-directive `view'
  196. /tmp/ccFrbSUQ.s:50: Error: unknown pseudo-op: `.lvu16'
  197. /tmp/ccFrbSUQ.s:53: Error: unknown .loc sub-directive `view'
  198. /tmp/ccFrbSUQ.s:53: Error: unknown pseudo-op: `.lvu17'
  199. /tmp/ccFrbSUQ.s:54: Error: unknown .loc sub-directive `view'
  200. /tmp/ccFrbSUQ.s:54: Error: unknown pseudo-op: `.lvu18'
  201. /tmp/ccFrbSUQ.s:55: Error: unknown .loc sub-directive `view'
  202. /tmp/ccFrbSUQ.s:55: Error: unknown pseudo-op: `.lvu19'
  203. /tmp/ccFrbSUQ.s:56: Error: unknown .loc sub-directive `view'
  204. /tmp/ccFrbSUQ.s:56: Error: unknown pseudo-op: `.lvu20'
  205. /tmp/ccFrbSUQ.s:57: Error: unknown .loc sub-directive `view'
  206. /tmp/ccFrbSUQ.s:57: Error: unknown pseudo-op: `.lvu21'
  207. /tmp/ccFrbSUQ.s:58: Error: unknown .loc sub-directive `view'
  208. /tmp/ccFrbSUQ.s:58: Error: unknown pseudo-op: `.lvu22'
  209. /tmp/ccFrbSUQ.s:59: Error: unknown .loc sub-directive `view'
  210. /tmp/ccFrbSUQ.s:59: Error: unknown pseudo-op: `.lvu23'
  211. /tmp/ccFrbSUQ.s:60: Error: unknown .loc sub-directive `view'
  212. /tmp/ccFrbSUQ.s:60: Error: unknown pseudo-op: `.lvu24'
  213. /tmp/ccFrbSUQ.s:62: Error: unknown .loc sub-directive `view'
  214. /tmp/ccFrbSUQ.s:62: Error: unknown pseudo-op: `.lvu25'
  215. /tmp/ccFrbSUQ.s:65: Error: unknown .loc sub-directive `view'
  216. /tmp/ccFrbSUQ.s:65: Error: unknown pseudo-op: `.lvu26'
  217. /tmp/ccFrbSUQ.s:67: Error: unknown .loc sub-directive `view'
  218. /tmp/ccFrbSUQ.s:67: Error: unknown pseudo-op: `.lvu27'
  219. /tmp/ccFrbSUQ.s:70: Error: unknown .loc sub-directive `view'
  220. /tmp/ccFrbSUQ.s:70: Error: unknown pseudo-op: `.lvu28'
  221. /tmp/ccFrbSUQ.s:74: Error: unknown .loc sub-directive `view'
  222. /tmp/ccFrbSUQ.s:74: Error: unknown pseudo-op: `.lvu29'
  223. /tmp/ccFrbSUQ.s:79: Error: unknown .loc sub-directive `view'
  224. /tmp/ccFrbSUQ.s:79: Error: unknown pseudo-op: `.lvu30'
  225. /tmp/ccFrbSUQ.s:81: Error: unknown .loc sub-directive `view'
  226. /tmp/ccFrbSUQ.s:81: Error: unknown pseudo-op: `.lvu31'
  227. /tmp/ccFrbSUQ.s:84: Error: unknown .loc sub-directive `view'
  228. /tmp/ccFrbSUQ.s:84: Error: unknown pseudo-op: `.lvu32'
  229. /tmp/ccFrbSUQ.s:87: Error: unknown .loc sub-directive `view'
  230. /tmp/ccFrbSUQ.s:87: Error: unknown pseudo-op: `.lvu33'
  231. /tmp/ccFrbSUQ.s:98: Error: unknown .loc sub-directive `view'
  232. /tmp/ccFrbSUQ.s:98: Error: junk at end of line, first unrecognized character is `-'
  233. /tmp/ccFrbSUQ.s:101: Error: unknown .loc sub-directive `view'
  234. /tmp/ccFrbSUQ.s:101: Error: unknown pseudo-op: `.lvu35'
  235. /tmp/ccFrbSUQ.s:102: Error: unknown .loc sub-directive `view'
  236. /tmp/ccFrbSUQ.s:102: Error: unknown pseudo-op: `.lvu36'
  237. /tmp/ccFrbSUQ.s:127: Error: unknown .loc sub-directive `view'
  238. /tmp/ccFrbSUQ.s:127: Error: junk at end of line, first unrecognized character is `-'
  239. /tmp/ccFrbSUQ.s:129: Error: unknown .loc sub-directive `view'
  240. /tmp/ccFrbSUQ.s:129: Error: unknown pseudo-op: `.lvu38'
  241. /tmp/ccFrbSUQ.s:131: Error: unknown .loc sub-directive `view'
  242. /tmp/ccFrbSUQ.s:131: Error: unknown pseudo-op: `.lvu39'
  243. /tmp/ccFrbSUQ.s:132: Error: unknown .loc sub-directive `view'
  244. /tmp/ccFrbSUQ.s:132: Error: unknown pseudo-op: `.lvu40'
  245. /tmp/ccFrbSUQ.s:144: Error: unknown .loc sub-directive `view'
  246. /tmp/ccFrbSUQ.s:144: Error: junk at end of line, first unrecognized character is `-'
  247. /tmp/ccFrbSUQ.s:147: Error: unknown .loc sub-directive `view'
  248. /tmp/ccFrbSUQ.s:147: Error: unknown pseudo-op: `.lvu42'
  249. /tmp/ccFrbSUQ.s:148: Error: unknown .loc sub-directive `view'
  250. /tmp/ccFrbSUQ.s:148: Error: unknown pseudo-op: `.lvu43'
  251. /tmp/ccFrbSUQ.s:160: Error: unknown .loc sub-directive `view'
  252. /tmp/ccFrbSUQ.s:160: Error: junk at end of line, first unrecognized character is `-'
  253. /tmp/ccFrbSUQ.s:163: Error: unknown .loc sub-directive `view'
  254. /tmp/ccFrbSUQ.s:163: Error: unknown pseudo-op: `.lvu45'
  255. /tmp/ccFrbSUQ.s:164: Error: unknown .loc sub-directive `view'
  256. /tmp/ccFrbSUQ.s:164: Error: unknown pseudo-op: `.lvu46'
  257. /tmp/ccFrbSUQ.s:176: Error: unknown .loc sub-directive `view'
  258. /tmp/ccFrbSUQ.s:176: Error: junk at end of line, first unrecognized character is `-'
  259. /tmp/ccFrbSUQ.s:179: Error: unknown .loc sub-directive `view'
  260. /tmp/ccFrbSUQ.s:179: Error: unknown pseudo-op: `.lvu48'
  261. /tmp/ccFrbSUQ.s:181: Error: unknown .loc sub-directive `view'
  262. /tmp/ccFrbSUQ.s:181: Error: unknown pseudo-op: `.lvu49'
  263. /tmp/ccFrbSUQ.s:182: Error: unknown .loc sub-directive `view'
  264. /tmp/ccFrbSUQ.s:182: Error: unknown pseudo-op: `.lvu50'
  265. /tmp/ccFrbSUQ.s:183: Error: unknown .loc sub-directive `view'
  266. /tmp/ccFrbSUQ.s:183: Error: unknown pseudo-op: `.lvu51'
  267. /tmp/ccFrbSUQ.s:184: Error: unknown .loc sub-directive `view'
  268. /tmp/ccFrbSUQ.s:184: Error: unknown pseudo-op: `.lvu52'
  269. /tmp/ccFrbSUQ.s:185: Error: unknown .loc sub-directive `view'
  270. /tmp/ccFrbSUQ.s:185: Error: unknown pseudo-op: `.lvu53'
  271. /tmp/ccFrbSUQ.s:208: Error: unknown .loc sub-directive `view'
  272. /tmp/ccFrbSUQ.s:208: Error: junk at end of line, first unrecognized character is `-'
  273. /tmp/ccFrbSUQ.s:210: Error: unknown .loc sub-directive `view'
  274. /tmp/ccFrbSUQ.s:210: Error: unknown pseudo-op: `.lvu55'
  275. /tmp/ccFrbSUQ.s:212: Error: unknown .loc sub-directive `view'
  276. /tmp/ccFrbSUQ.s:212: Error: unknown pseudo-op: `.lvu56'
  277. /tmp/ccFrbSUQ.s:214: Error: unknown .loc sub-directive `view'
  278. /tmp/ccFrbSUQ.s:214: Error: unknown pseudo-op: `.lvu57'
  279. /tmp/ccFrbSUQ.s:215: Error: unknown .loc sub-directive `view'
  280. /tmp/ccFrbSUQ.s:215: Error: unknown pseudo-op: `.lvu58'
  281. /tmp/ccFrbSUQ.s:216: Error: unknown .loc sub-directive `view'
  282. /tmp/ccFrbSUQ.s:216: Error: unknown pseudo-op: `.lvu59'
  283. /tmp/ccFrbSUQ.s:217: Error: unknown .loc sub-directive `view'
  284. /tmp/ccFrbSUQ.s:217: Error: unknown pseudo-op: `.lvu60'
  285. /tmp/ccFrbSUQ.s:220: Error: unknown .loc sub-directive `view'
  286. /tmp/ccFrbSUQ.s:220: Error: unknown pseudo-op: `.lvu61'
  287. /tmp/ccFrbSUQ.s:222: Error: unknown .loc sub-directive `view'
  288. /tmp/ccFrbSUQ.s:222: Error: unknown pseudo-op: `.lvu62'
  289. /tmp/ccFrbSUQ.s:223: Error: unknown .loc sub-directive `view'
  290. /tmp/ccFrbSUQ.s:223: Error: unknown pseudo-op: `.lvu63'
  291. /tmp/ccFrbSUQ.s:226: Error: unknown .loc sub-directive `view'
  292. /tmp/ccFrbSUQ.s:226: Error: unknown pseudo-op: `.lvu64'
  293. /tmp/ccFrbSUQ.s:229: Error: unknown .loc sub-directive `view'
  294. /tmp/ccFrbSUQ.s:229: Error: unknown pseudo-op: `.lvu65'
  295. /tmp/ccFrbSUQ.s:231: Error: unknown .loc sub-directive `view'
  296. /tmp/ccFrbSUQ.s:231: Error: unknown pseudo-op: `.lvu66'
  297. /tmp/ccFrbSUQ.s:232: Error: unknown .loc sub-directive `view'
  298. /tmp/ccFrbSUQ.s:232: Error: unknown pseudo-op: `.lvu67'
  299. /tmp/ccFrbSUQ.s:235: Error: unknown .loc sub-directive `view'
  300. /tmp/ccFrbSUQ.s:235: Error: unknown pseudo-op: `.lvu68'
  301. /tmp/ccFrbSUQ.s:238: Error: unknown .loc sub-directive `view'
  302. /tmp/ccFrbSUQ.s:238: Error: unknown pseudo-op: `.lvu69'
  303. /tmp/ccFrbSUQ.s:239: Error: unknown .loc sub-directive `view'
  304. /tmp/ccFrbSUQ.s:239: Error: unknown pseudo-op: `.lvu70'
  305. /tmp/ccFrbSUQ.s:241: Error: unknown .loc sub-directive `view'
  306. /tmp/ccFrbSUQ.s:241: Error: unknown pseudo-op: `.lvu71'
  307. /tmp/ccFrbSUQ.s:243: Error: unknown .loc sub-directive `view'
  308. /tmp/ccFrbSUQ.s:243: Error: unknown pseudo-op: `.lvu72'
  309. /tmp/ccFrbSUQ.s:254: Error: unknown .loc sub-directive `view'
  310. /tmp/ccFrbSUQ.s:254: Error: unknown pseudo-op: `.lvu73'
  311. /tmp/ccFrbSUQ.s:258: Error: unknown .loc sub-directive `view'
  312. /tmp/ccFrbSUQ.s:258: Error: unknown pseudo-op: `.lvu74'
  313. /tmp/ccFrbSUQ.s:259: Error: unknown .loc sub-directive `view'
  314. /tmp/ccFrbSUQ.s:259: Error: unknown pseudo-op: `.lvu75'
  315. /tmp/ccFrbSUQ.s:262: Error: unknown .loc sub-directive `view'
  316. /tmp/ccFrbSUQ.s:262: Error: unknown pseudo-op: `.lvu76'
  317. /tmp/ccFrbSUQ.s:264: Error: unknown .loc sub-directive `view'
  318. /tmp/ccFrbSUQ.s:264: Error: unknown pseudo-op: `.lvu77'
  319. /tmp/ccFrbSUQ.s:267: Error: unknown .loc sub-directive `view'
  320. /tmp/ccFrbSUQ.s:267: Error: unknown pseudo-op: `.lvu78'
  321. /tmp/ccFrbSUQ.s:269: Error: unknown .loc sub-directive `view'
  322. /tmp/ccFrbSUQ.s:269: Error: unknown pseudo-op: `.lvu79'
  323. /tmp/ccFrbSUQ.s:273: Error: unknown .loc sub-directive `view'
  324. /tmp/ccFrbSUQ.s:273: Error: unknown pseudo-op: `.lvu80'
  325. /tmp/ccFrbSUQ.s:275: Error: unknown .loc sub-directive `view'
  326. /tmp/ccFrbSUQ.s:275: Error: unknown pseudo-op: `.lvu81'
  327. /tmp/ccFrbSUQ.s:279: Error: unknown .loc sub-directive `view'
  328. /tmp/ccFrbSUQ.s:279: Error: unknown pseudo-op: `.lvu82'
  329. /tmp/ccFrbSUQ.s:280: Error: unknown .loc sub-directive `view'
  330. /tmp/ccFrbSUQ.s:280: Error: unknown pseudo-op: `.lvu83'
  331. /tmp/ccFrbSUQ.s:281: Error: unknown .loc sub-directive `view'
  332. /tmp/ccFrbSUQ.s:281: Error: unknown pseudo-op: `.lvu84'
  333. /tmp/ccFrbSUQ.s:284: Error: unknown .loc sub-directive `view'
  334. /tmp/ccFrbSUQ.s:284: Error: unknown pseudo-op: `.lvu85'
  335. /tmp/ccFrbSUQ.s:287: Error: unknown .loc sub-directive `view'
  336. /tmp/ccFrbSUQ.s:287: Error: unknown pseudo-op: `.lvu86'
  337. configure:4213: $? = 1
  338. configure: failed program was:
  339. | /* confdefs.h */
  340. | #define PACKAGE_NAME "libsigc++"
  341. | #define PACKAGE_TARNAME "libsigc++"
  342. | #define PACKAGE_VERSION "2.10.2"
  343. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  344. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  345. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  346. | #define SIGCXX_MAJOR_VERSION 2
  347. | #define SIGCXX_MINOR_VERSION 10
  348. | #define SIGCXX_MICRO_VERSION 2
  349. | /* end confdefs.h. */
  350. |
  351. |
  352. | // If the compiler admits that it is not ready for C++11, why torture it?
  353. | // Hopefully, this will speed up the test.
  354. |
  355. | #ifndef __cplusplus
  356. |
  357. | #error "This is not a C++ compiler"
  358. |
  359. | #elif __cplusplus < 201103L
  360. |
  361. | #error "This is not a C++11 compiler"
  362. |
  363. | #else
  364. |
  365. | namespace cxx11
  366. | {
  367. |
  368. | namespace test_static_assert
  369. | {
  370. |
  371. | template <typename T>
  372. | struct check
  373. | {
  374. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  375. | };
  376. |
  377. | }
  378. |
  379. | namespace test_final_override
  380. | {
  381. |
  382. | struct Base
  383. | {
  384. | virtual void f() {}
  385. | };
  386. |
  387. | struct Derived : public Base
  388. | {
  389. | virtual void f() override {}
  390. | };
  391. |
  392. | }
  393. |
  394. | namespace test_double_right_angle_brackets
  395. | {
  396. |
  397. | template < typename T >
  398. | struct check {};
  399. |
  400. | typedef check<void> single_type;
  401. | typedef check<check<void>> double_type;
  402. | typedef check<check<check<void>>> triple_type;
  403. | typedef check<check<check<check<void>>>> quadruple_type;
  404. |
  405. | }
  406. |
  407. | namespace test_decltype
  408. | {
  409. |
  410. | int
  411. | f()
  412. | {
  413. | int a = 1;
  414. | decltype(a) b = 2;
  415. | return a + b;
  416. | }
  417. |
  418. | }
  419. |
  420. | namespace test_type_deduction
  421. | {
  422. |
  423. | template < typename T1, typename T2 >
  424. | struct is_same
  425. | {
  426. | static const bool value = false;
  427. | };
  428. |
  429. | template < typename T >
  430. | struct is_same<T, T>
  431. | {
  432. | static const bool value = true;
  433. | };
  434. |
  435. | template < typename T1, typename T2 >
  436. | auto
  437. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  438. | {
  439. | return a1 + a2;
  440. | }
  441. |
  442. | int
  443. | test(const int c, volatile int v)
  444. | {
  445. | static_assert(is_same<int, decltype(0)>::value == true, "");
  446. | static_assert(is_same<int, decltype(c)>::value == false, "");
  447. | static_assert(is_same<int, decltype(v)>::value == false, "");
  448. | auto ac = c;
  449. | auto av = v;
  450. | auto sumi = ac + av + 'x';
  451. | auto sumf = ac + av + 1.0;
  452. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  453. | static_assert(is_same<int, decltype(av)>::value == true, "");
  454. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  455. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  456. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  457. | return (sumf > 0.0) ? sumi : add(c, v);
  458. | }
  459. |
  460. | }
  461. |
  462. | namespace test_noexcept
  463. | {
  464. |
  465. | int f() { return 0; }
  466. | int g() noexcept { return 0; }
  467. |
  468. | static_assert(noexcept(f()) == false, "");
  469. | static_assert(noexcept(g()) == true, "");
  470. |
  471. | }
  472. |
  473. | namespace test_constexpr
  474. | {
  475. |
  476. | template < typename CharT >
  477. | unsigned long constexpr
  478. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  479. | {
  480. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  481. | }
  482. |
  483. | template < typename CharT >
  484. | unsigned long constexpr
  485. | strlen_c(const CharT *const s) noexcept
  486. | {
  487. | return strlen_c_r(s, 0UL);
  488. | }
  489. |
  490. | static_assert(strlen_c("") == 0UL, "");
  491. | static_assert(strlen_c("1") == 1UL, "");
  492. | static_assert(strlen_c("example") == 7UL, "");
  493. | static_assert(strlen_c("another\0example") == 7UL, "");
  494. |
  495. | }
  496. |
  497. | namespace test_rvalue_references
  498. | {
  499. |
  500. | template < int N >
  501. | struct answer
  502. | {
  503. | static constexpr int value = N;
  504. | };
  505. |
  506. | answer<1> f(int&) { return answer<1>(); }
  507. | answer<2> f(const int&) { return answer<2>(); }
  508. | answer<3> f(int&&) { return answer<3>(); }
  509. |
  510. | void
  511. | test()
  512. | {
  513. | int i = 0;
  514. | const int c = 0;
  515. | static_assert(decltype(f(i))::value == 1, "");
  516. | static_assert(decltype(f(c))::value == 2, "");
  517. | static_assert(decltype(f(0))::value == 3, "");
  518. | }
  519. |
  520. | }
  521. |
  522. | namespace test_uniform_initialization
  523. | {
  524. |
  525. | struct test
  526. | {
  527. | static const int zero {};
  528. | static const int one {1};
  529. | };
  530. |
  531. | static_assert(test::zero == 0, "");
  532. | static_assert(test::one == 1, "");
  533. |
  534. | }
  535. |
  536. | namespace test_lambdas
  537. | {
  538. |
  539. | void
  540. | test1()
  541. | {
  542. | auto lambda1 = [](){};
  543. | auto lambda2 = lambda1;
  544. | lambda1();
  545. | lambda2();
  546. | }
  547. |
  548. | int
  549. | test2()
  550. | {
  551. | auto a = [](int i, int j){ return i + j; }(1, 2);
  552. | auto b = []() -> int { return '0'; }();
  553. | auto c = [=](){ return a + b; }();
  554. | auto d = [&](){ return c; }();
  555. | auto e = [a, &b](int x) mutable {
  556. | const auto identity = [](int y){ return y; };
  557. | for (auto i = 0; i < a; ++i)
  558. | a += b--;
  559. | return x + identity(a + b);
  560. | }(0);
  561. | return a + b + c + d + e;
  562. | }
  563. |
  564. | int
  565. | test3()
  566. | {
  567. | const auto nullary = [](){ return 0; };
  568. | const auto unary = [](int x){ return x; };
  569. | using nullary_t = decltype(nullary);
  570. | using unary_t = decltype(unary);
  571. | const auto higher1st = [](nullary_t f){ return f(); };
  572. | const auto higher2nd = [unary](nullary_t f1){
  573. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  574. | };
  575. | return higher1st(nullary) + higher2nd(nullary)(unary);
  576. | }
  577. |
  578. | }
  579. |
  580. | namespace test_variadic_templates
  581. | {
  582. |
  583. | template <int...>
  584. | struct sum;
  585. |
  586. | template <int N0, int... N1toN>
  587. | struct sum<N0, N1toN...>
  588. | {
  589. | static constexpr auto value = N0 + sum<N1toN...>::value;
  590. | };
  591. |
  592. | template <>
  593. | struct sum<>
  594. | {
  595. | static constexpr auto value = 0;
  596. | };
  597. |
  598. | static_assert(sum<>::value == 0, "");
  599. | static_assert(sum<1>::value == 1, "");
  600. | static_assert(sum<23>::value == 23, "");
  601. | static_assert(sum<1, 2>::value == 3, "");
  602. | static_assert(sum<5, 5, 11>::value == 21, "");
  603. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  604. |
  605. | }
  606. |
  607. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  608. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  609. | // because of this.
  610. | namespace test_template_alias_sfinae
  611. | {
  612. |
  613. | struct foo {};
  614. |
  615. | template<typename T>
  616. | using member = typename T::member_type;
  617. |
  618. | template<typename T>
  619. | void func(...) {}
  620. |
  621. | template<typename T>
  622. | void func(member<T>*) {}
  623. |
  624. | void test();
  625. |
  626. | void test() { func<foo>(0); }
  627. |
  628. | }
  629. |
  630. | } // namespace cxx11
  631. |
  632. | #endif // __cplusplus >= 201103L
  633. |
  634. |
  635. |
  636. configure:4220: result: no
  637. configure:4232: checking whether g++ supports C++11 features with -std=c++11
  638. configure:4528: g++ -std=c++11 -c -g -O2 conftest.cpp >&5
  639. /tmp/ccWZ15jY.s: Assembler messages:
  640. /tmp/ccWZ15jY.s:12: Error: unknown .loc sub-directive `view'
  641. /tmp/ccWZ15jY.s:12: Error: junk at end of line, first unrecognized character is `-'
  642. /tmp/ccWZ15jY.s:15: Error: unknown .loc sub-directive `view'
  643. /tmp/ccWZ15jY.s:15: Error: unknown pseudo-op: `.lvu1'
  644. /tmp/ccWZ15jY.s:17: Error: unknown .loc sub-directive `view'
  645. /tmp/ccWZ15jY.s:17: Error: unknown pseudo-op: `.lvu2'
  646. /tmp/ccWZ15jY.s:18: Error: unknown .loc sub-directive `view'
  647. /tmp/ccWZ15jY.s:18: Error: unknown pseudo-op: `.lvu3'
  648. /tmp/ccWZ15jY.s:19: Error: unknown .loc sub-directive `view'
  649. /tmp/ccWZ15jY.s:19: Error: unknown pseudo-op: `.lvu4'
  650. /tmp/ccWZ15jY.s:32: Error: unknown .loc sub-directive `view'
  651. /tmp/ccWZ15jY.s:32: Error: junk at end of line, first unrecognized character is `-'
  652. /tmp/ccWZ15jY.s:34: Error: unknown .loc sub-directive `view'
  653. /tmp/ccWZ15jY.s:34: Error: unknown pseudo-op: `.lvu6'
  654. /tmp/ccWZ15jY.s:36: Error: unknown .loc sub-directive `view'
  655. /tmp/ccWZ15jY.s:36: Error: unknown pseudo-op: `.lvu7'
  656. /tmp/ccWZ15jY.s:37: Error: unknown .loc sub-directive `view'
  657. /tmp/ccWZ15jY.s:37: Error: unknown pseudo-op: `.lvu8'
  658. /tmp/ccWZ15jY.s:38: Error: unknown .loc sub-directive `view'
  659. /tmp/ccWZ15jY.s:38: Error: unknown pseudo-op: `.lvu9'
  660. /tmp/ccWZ15jY.s:39: Error: unknown .loc sub-directive `view'
  661. /tmp/ccWZ15jY.s:39: Error: unknown pseudo-op: `.lvu10'
  662. /tmp/ccWZ15jY.s:41: Error: unknown .loc sub-directive `view'
  663. /tmp/ccWZ15jY.s:41: Error: unknown pseudo-op: `.lvu11'
  664. /tmp/ccWZ15jY.s:42: Error: unknown .loc sub-directive `view'
  665. /tmp/ccWZ15jY.s:42: Error: unknown pseudo-op: `.lvu12'
  666. /tmp/ccWZ15jY.s:44: Error: unknown .loc sub-directive `view'
  667. /tmp/ccWZ15jY.s:44: Error: unknown pseudo-op: `.lvu13'
  668. /tmp/ccWZ15jY.s:46: Error: unknown .loc sub-directive `view'
  669. /tmp/ccWZ15jY.s:46: Error: unknown pseudo-op: `.lvu14'
  670. /tmp/ccWZ15jY.s:49: Error: unknown .loc sub-directive `view'
  671. /tmp/ccWZ15jY.s:49: Error: unknown pseudo-op: `.lvu15'
  672. /tmp/ccWZ15jY.s:50: Error: unknown .loc sub-directive `view'
  673. /tmp/ccWZ15jY.s:50: Error: unknown pseudo-op: `.lvu16'
  674. /tmp/ccWZ15jY.s:53: Error: unknown .loc sub-directive `view'
  675. /tmp/ccWZ15jY.s:53: Error: unknown pseudo-op: `.lvu17'
  676. /tmp/ccWZ15jY.s:54: Error: unknown .loc sub-directive `view'
  677. /tmp/ccWZ15jY.s:54: Error: unknown pseudo-op: `.lvu18'
  678. /tmp/ccWZ15jY.s:55: Error: unknown .loc sub-directive `view'
  679. /tmp/ccWZ15jY.s:55: Error: unknown pseudo-op: `.lvu19'
  680. /tmp/ccWZ15jY.s:56: Error: unknown .loc sub-directive `view'
  681. /tmp/ccWZ15jY.s:56: Error: unknown pseudo-op: `.lvu20'
  682. /tmp/ccWZ15jY.s:57: Error: unknown .loc sub-directive `view'
  683. /tmp/ccWZ15jY.s:57: Error: unknown pseudo-op: `.lvu21'
  684. /tmp/ccWZ15jY.s:58: Error: unknown .loc sub-directive `view'
  685. /tmp/ccWZ15jY.s:58: Error: unknown pseudo-op: `.lvu22'
  686. /tmp/ccWZ15jY.s:59: Error: unknown .loc sub-directive `view'
  687. /tmp/ccWZ15jY.s:59: Error: unknown pseudo-op: `.lvu23'
  688. /tmp/ccWZ15jY.s:60: Error: unknown .loc sub-directive `view'
  689. /tmp/ccWZ15jY.s:60: Error: unknown pseudo-op: `.lvu24'
  690. /tmp/ccWZ15jY.s:62: Error: unknown .loc sub-directive `view'
  691. /tmp/ccWZ15jY.s:62: Error: unknown pseudo-op: `.lvu25'
  692. /tmp/ccWZ15jY.s:65: Error: unknown .loc sub-directive `view'
  693. /tmp/ccWZ15jY.s:65: Error: unknown pseudo-op: `.lvu26'
  694. /tmp/ccWZ15jY.s:67: Error: unknown .loc sub-directive `view'
  695. /tmp/ccWZ15jY.s:67: Error: unknown pseudo-op: `.lvu27'
  696. /tmp/ccWZ15jY.s:70: Error: unknown .loc sub-directive `view'
  697. /tmp/ccWZ15jY.s:70: Error: unknown pseudo-op: `.lvu28'
  698. /tmp/ccWZ15jY.s:74: Error: unknown .loc sub-directive `view'
  699. /tmp/ccWZ15jY.s:74: Error: unknown pseudo-op: `.lvu29'
  700. /tmp/ccWZ15jY.s:79: Error: unknown .loc sub-directive `view'
  701. /tmp/ccWZ15jY.s:79: Error: unknown pseudo-op: `.lvu30'
  702. /tmp/ccWZ15jY.s:81: Error: unknown .loc sub-directive `view'
  703. /tmp/ccWZ15jY.s:81: Error: unknown pseudo-op: `.lvu31'
  704. /tmp/ccWZ15jY.s:84: Error: unknown .loc sub-directive `view'
  705. /tmp/ccWZ15jY.s:84: Error: unknown pseudo-op: `.lvu32'
  706. /tmp/ccWZ15jY.s:87: Error: unknown .loc sub-directive `view'
  707. /tmp/ccWZ15jY.s:87: Error: unknown pseudo-op: `.lvu33'
  708. /tmp/ccWZ15jY.s:98: Error: unknown .loc sub-directive `view'
  709. /tmp/ccWZ15jY.s:98: Error: junk at end of line, first unrecognized character is `-'
  710. /tmp/ccWZ15jY.s:101: Error: unknown .loc sub-directive `view'
  711. /tmp/ccWZ15jY.s:101: Error: unknown pseudo-op: `.lvu35'
  712. /tmp/ccWZ15jY.s:102: Error: unknown .loc sub-directive `view'
  713. /tmp/ccWZ15jY.s:102: Error: unknown pseudo-op: `.lvu36'
  714. /tmp/ccWZ15jY.s:127: Error: unknown .loc sub-directive `view'
  715. /tmp/ccWZ15jY.s:127: Error: junk at end of line, first unrecognized character is `-'
  716. /tmp/ccWZ15jY.s:129: Error: unknown .loc sub-directive `view'
  717. /tmp/ccWZ15jY.s:129: Error: unknown pseudo-op: `.lvu38'
  718. /tmp/ccWZ15jY.s:131: Error: unknown .loc sub-directive `view'
  719. /tmp/ccWZ15jY.s:131: Error: unknown pseudo-op: `.lvu39'
  720. /tmp/ccWZ15jY.s:132: Error: unknown .loc sub-directive `view'
  721. /tmp/ccWZ15jY.s:132: Error: unknown pseudo-op: `.lvu40'
  722. /tmp/ccWZ15jY.s:144: Error: unknown .loc sub-directive `view'
  723. /tmp/ccWZ15jY.s:144: Error: junk at end of line, first unrecognized character is `-'
  724. /tmp/ccWZ15jY.s:147: Error: unknown .loc sub-directive `view'
  725. /tmp/ccWZ15jY.s:147: Error: unknown pseudo-op: `.lvu42'
  726. /tmp/ccWZ15jY.s:148: Error: unknown .loc sub-directive `view'
  727. /tmp/ccWZ15jY.s:148: Error: unknown pseudo-op: `.lvu43'
  728. /tmp/ccWZ15jY.s:160: Error: unknown .loc sub-directive `view'
  729. /tmp/ccWZ15jY.s:160: Error: junk at end of line, first unrecognized character is `-'
  730. /tmp/ccWZ15jY.s:163: Error: unknown .loc sub-directive `view'
  731. /tmp/ccWZ15jY.s:163: Error: unknown pseudo-op: `.lvu45'
  732. /tmp/ccWZ15jY.s:164: Error: unknown .loc sub-directive `view'
  733. /tmp/ccWZ15jY.s:164: Error: unknown pseudo-op: `.lvu46'
  734. /tmp/ccWZ15jY.s:176: Error: unknown .loc sub-directive `view'
  735. /tmp/ccWZ15jY.s:176: Error: junk at end of line, first unrecognized character is `-'
  736. /tmp/ccWZ15jY.s:179: Error: unknown .loc sub-directive `view'
  737. /tmp/ccWZ15jY.s:179: Error: unknown pseudo-op: `.lvu48'
  738. /tmp/ccWZ15jY.s:181: Error: unknown .loc sub-directive `view'
  739. /tmp/ccWZ15jY.s:181: Error: unknown pseudo-op: `.lvu49'
  740. /tmp/ccWZ15jY.s:182: Error: unknown .loc sub-directive `view'
  741. /tmp/ccWZ15jY.s:182: Error: unknown pseudo-op: `.lvu50'
  742. /tmp/ccWZ15jY.s:183: Error: unknown .loc sub-directive `view'
  743. /tmp/ccWZ15jY.s:183: Error: unknown pseudo-op: `.lvu51'
  744. /tmp/ccWZ15jY.s:184: Error: unknown .loc sub-directive `view'
  745. /tmp/ccWZ15jY.s:184: Error: unknown pseudo-op: `.lvu52'
  746. /tmp/ccWZ15jY.s:185: Error: unknown .loc sub-directive `view'
  747. /tmp/ccWZ15jY.s:185: Error: unknown pseudo-op: `.lvu53'
  748. /tmp/ccWZ15jY.s:208: Error: unknown .loc sub-directive `view'
  749. /tmp/ccWZ15jY.s:208: Error: junk at end of line, first unrecognized character is `-'
  750. /tmp/ccWZ15jY.s:210: Error: unknown .loc sub-directive `view'
  751. /tmp/ccWZ15jY.s:210: Error: unknown pseudo-op: `.lvu55'
  752. /tmp/ccWZ15jY.s:212: Error: unknown .loc sub-directive `view'
  753. /tmp/ccWZ15jY.s:212: Error: unknown pseudo-op: `.lvu56'
  754. /tmp/ccWZ15jY.s:214: Error: unknown .loc sub-directive `view'
  755. /tmp/ccWZ15jY.s:214: Error: unknown pseudo-op: `.lvu57'
  756. /tmp/ccWZ15jY.s:215: Error: unknown .loc sub-directive `view'
  757. /tmp/ccWZ15jY.s:215: Error: unknown pseudo-op: `.lvu58'
  758. /tmp/ccWZ15jY.s:216: Error: unknown .loc sub-directive `view'
  759. /tmp/ccWZ15jY.s:216: Error: unknown pseudo-op: `.lvu59'
  760. /tmp/ccWZ15jY.s:217: Error: unknown .loc sub-directive `view'
  761. /tmp/ccWZ15jY.s:217: Error: unknown pseudo-op: `.lvu60'
  762. /tmp/ccWZ15jY.s:220: Error: unknown .loc sub-directive `view'
  763. /tmp/ccWZ15jY.s:220: Error: unknown pseudo-op: `.lvu61'
  764. /tmp/ccWZ15jY.s:222: Error: unknown .loc sub-directive `view'
  765. /tmp/ccWZ15jY.s:222: Error: unknown pseudo-op: `.lvu62'
  766. /tmp/ccWZ15jY.s:223: Error: unknown .loc sub-directive `view'
  767. /tmp/ccWZ15jY.s:223: Error: unknown pseudo-op: `.lvu63'
  768. /tmp/ccWZ15jY.s:226: Error: unknown .loc sub-directive `view'
  769. /tmp/ccWZ15jY.s:226: Error: unknown pseudo-op: `.lvu64'
  770. /tmp/ccWZ15jY.s:229: Error: unknown .loc sub-directive `view'
  771. /tmp/ccWZ15jY.s:229: Error: unknown pseudo-op: `.lvu65'
  772. /tmp/ccWZ15jY.s:231: Error: unknown .loc sub-directive `view'
  773. /tmp/ccWZ15jY.s:231: Error: unknown pseudo-op: `.lvu66'
  774. /tmp/ccWZ15jY.s:232: Error: unknown .loc sub-directive `view'
  775. /tmp/ccWZ15jY.s:232: Error: unknown pseudo-op: `.lvu67'
  776. /tmp/ccWZ15jY.s:235: Error: unknown .loc sub-directive `view'
  777. /tmp/ccWZ15jY.s:235: Error: unknown pseudo-op: `.lvu68'
  778. /tmp/ccWZ15jY.s:238: Error: unknown .loc sub-directive `view'
  779. /tmp/ccWZ15jY.s:238: Error: unknown pseudo-op: `.lvu69'
  780. /tmp/ccWZ15jY.s:239: Error: unknown .loc sub-directive `view'
  781. /tmp/ccWZ15jY.s:239: Error: unknown pseudo-op: `.lvu70'
  782. /tmp/ccWZ15jY.s:241: Error: unknown .loc sub-directive `view'
  783. /tmp/ccWZ15jY.s:241: Error: unknown pseudo-op: `.lvu71'
  784. /tmp/ccWZ15jY.s:243: Error: unknown .loc sub-directive `view'
  785. /tmp/ccWZ15jY.s:243: Error: unknown pseudo-op: `.lvu72'
  786. /tmp/ccWZ15jY.s:254: Error: unknown .loc sub-directive `view'
  787. /tmp/ccWZ15jY.s:254: Error: unknown pseudo-op: `.lvu73'
  788. /tmp/ccWZ15jY.s:258: Error: unknown .loc sub-directive `view'
  789. /tmp/ccWZ15jY.s:258: Error: unknown pseudo-op: `.lvu74'
  790. /tmp/ccWZ15jY.s:259: Error: unknown .loc sub-directive `view'
  791. /tmp/ccWZ15jY.s:259: Error: unknown pseudo-op: `.lvu75'
  792. /tmp/ccWZ15jY.s:262: Error: unknown .loc sub-directive `view'
  793. /tmp/ccWZ15jY.s:262: Error: unknown pseudo-op: `.lvu76'
  794. /tmp/ccWZ15jY.s:264: Error: unknown .loc sub-directive `view'
  795. /tmp/ccWZ15jY.s:264: Error: unknown pseudo-op: `.lvu77'
  796. /tmp/ccWZ15jY.s:267: Error: unknown .loc sub-directive `view'
  797. /tmp/ccWZ15jY.s:267: Error: unknown pseudo-op: `.lvu78'
  798. /tmp/ccWZ15jY.s:269: Error: unknown .loc sub-directive `view'
  799. /tmp/ccWZ15jY.s:269: Error: unknown pseudo-op: `.lvu79'
  800. /tmp/ccWZ15jY.s:273: Error: unknown .loc sub-directive `view'
  801. /tmp/ccWZ15jY.s:273: Error: unknown pseudo-op: `.lvu80'
  802. /tmp/ccWZ15jY.s:275: Error: unknown .loc sub-directive `view'
  803. /tmp/ccWZ15jY.s:275: Error: unknown pseudo-op: `.lvu81'
  804. /tmp/ccWZ15jY.s:279: Error: unknown .loc sub-directive `view'
  805. /tmp/ccWZ15jY.s:279: Error: unknown pseudo-op: `.lvu82'
  806. /tmp/ccWZ15jY.s:280: Error: unknown .loc sub-directive `view'
  807. /tmp/ccWZ15jY.s:280: Error: unknown pseudo-op: `.lvu83'
  808. /tmp/ccWZ15jY.s:281: Error: unknown .loc sub-directive `view'
  809. /tmp/ccWZ15jY.s:281: Error: unknown pseudo-op: `.lvu84'
  810. /tmp/ccWZ15jY.s:284: Error: unknown .loc sub-directive `view'
  811. /tmp/ccWZ15jY.s:284: Error: unknown pseudo-op: `.lvu85'
  812. /tmp/ccWZ15jY.s:287: Error: unknown .loc sub-directive `view'
  813. /tmp/ccWZ15jY.s:287: Error: unknown pseudo-op: `.lvu86'
  814. configure:4528: $? = 1
  815. configure: failed program was:
  816. | /* confdefs.h */
  817. | #define PACKAGE_NAME "libsigc++"
  818. | #define PACKAGE_TARNAME "libsigc++"
  819. | #define PACKAGE_VERSION "2.10.2"
  820. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  821. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  822. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  823. | #define SIGCXX_MAJOR_VERSION 2
  824. | #define SIGCXX_MINOR_VERSION 10
  825. | #define SIGCXX_MICRO_VERSION 2
  826. | /* end confdefs.h. */
  827. |
  828. |
  829. | // If the compiler admits that it is not ready for C++11, why torture it?
  830. | // Hopefully, this will speed up the test.
  831. |
  832. | #ifndef __cplusplus
  833. |
  834. | #error "This is not a C++ compiler"
  835. |
  836. | #elif __cplusplus < 201103L
  837. |
  838. | #error "This is not a C++11 compiler"
  839. |
  840. | #else
  841. |
  842. | namespace cxx11
  843. | {
  844. |
  845. | namespace test_static_assert
  846. | {
  847. |
  848. | template <typename T>
  849. | struct check
  850. | {
  851. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  852. | };
  853. |
  854. | }
  855. |
  856. | namespace test_final_override
  857. | {
  858. |
  859. | struct Base
  860. | {
  861. | virtual void f() {}
  862. | };
  863. |
  864. | struct Derived : public Base
  865. | {
  866. | virtual void f() override {}
  867. | };
  868. |
  869. | }
  870. |
  871. | namespace test_double_right_angle_brackets
  872. | {
  873. |
  874. | template < typename T >
  875. | struct check {};
  876. |
  877. | typedef check<void> single_type;
  878. | typedef check<check<void>> double_type;
  879. | typedef check<check<check<void>>> triple_type;
  880. | typedef check<check<check<check<void>>>> quadruple_type;
  881. |
  882. | }
  883. |
  884. | namespace test_decltype
  885. | {
  886. |
  887. | int
  888. | f()
  889. | {
  890. | int a = 1;
  891. | decltype(a) b = 2;
  892. | return a + b;
  893. | }
  894. |
  895. | }
  896. |
  897. | namespace test_type_deduction
  898. | {
  899. |
  900. | template < typename T1, typename T2 >
  901. | struct is_same
  902. | {
  903. | static const bool value = false;
  904. | };
  905. |
  906. | template < typename T >
  907. | struct is_same<T, T>
  908. | {
  909. | static const bool value = true;
  910. | };
  911. |
  912. | template < typename T1, typename T2 >
  913. | auto
  914. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  915. | {
  916. | return a1 + a2;
  917. | }
  918. |
  919. | int
  920. | test(const int c, volatile int v)
  921. | {
  922. | static_assert(is_same<int, decltype(0)>::value == true, "");
  923. | static_assert(is_same<int, decltype(c)>::value == false, "");
  924. | static_assert(is_same<int, decltype(v)>::value == false, "");
  925. | auto ac = c;
  926. | auto av = v;
  927. | auto sumi = ac + av + 'x';
  928. | auto sumf = ac + av + 1.0;
  929. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  930. | static_assert(is_same<int, decltype(av)>::value == true, "");
  931. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  932. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  933. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  934. | return (sumf > 0.0) ? sumi : add(c, v);
  935. | }
  936. |
  937. | }
  938. |
  939. | namespace test_noexcept
  940. | {
  941. |
  942. | int f() { return 0; }
  943. | int g() noexcept { return 0; }
  944. |
  945. | static_assert(noexcept(f()) == false, "");
  946. | static_assert(noexcept(g()) == true, "");
  947. |
  948. | }
  949. |
  950. | namespace test_constexpr
  951. | {
  952. |
  953. | template < typename CharT >
  954. | unsigned long constexpr
  955. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  956. | {
  957. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  958. | }
  959. |
  960. | template < typename CharT >
  961. | unsigned long constexpr
  962. | strlen_c(const CharT *const s) noexcept
  963. | {
  964. | return strlen_c_r(s, 0UL);
  965. | }
  966. |
  967. | static_assert(strlen_c("") == 0UL, "");
  968. | static_assert(strlen_c("1") == 1UL, "");
  969. | static_assert(strlen_c("example") == 7UL, "");
  970. | static_assert(strlen_c("another\0example") == 7UL, "");
  971. |
  972. | }
  973. |
  974. | namespace test_rvalue_references
  975. | {
  976. |
  977. | template < int N >
  978. | struct answer
  979. | {
  980. | static constexpr int value = N;
  981. | };
  982. |
  983. | answer<1> f(int&) { return answer<1>(); }
  984. | answer<2> f(const int&) { return answer<2>(); }
  985. | answer<3> f(int&&) { return answer<3>(); }
  986. |
  987. | void
  988. | test()
  989. | {
  990. | int i = 0;
  991. | const int c = 0;
  992. | static_assert(decltype(f(i))::value == 1, "");
  993. | static_assert(decltype(f(c))::value == 2, "");
  994. | static_assert(decltype(f(0))::value == 3, "");
  995. | }
  996. |
  997. | }
  998. |
  999. | namespace test_uniform_initialization
  1000. | {
  1001. |
  1002. | struct test
  1003. | {
  1004. | static const int zero {};
  1005. | static const int one {1};
  1006. | };
  1007. |
  1008. | static_assert(test::zero == 0, "");
  1009. | static_assert(test::one == 1, "");
  1010. |
  1011. | }
  1012. |
  1013. | namespace test_lambdas
  1014. | {
  1015. |
  1016. | void
  1017. | test1()
  1018. | {
  1019. | auto lambda1 = [](){};
  1020. | auto lambda2 = lambda1;
  1021. | lambda1();
  1022. | lambda2();
  1023. | }
  1024. |
  1025. | int
  1026. | test2()
  1027. | {
  1028. | auto a = [](int i, int j){ return i + j; }(1, 2);
  1029. | auto b = []() -> int { return '0'; }();
  1030. | auto c = [=](){ return a + b; }();
  1031. | auto d = [&](){ return c; }();
  1032. | auto e = [a, &b](int x) mutable {
  1033. | const auto identity = [](int y){ return y; };
  1034. | for (auto i = 0; i < a; ++i)
  1035. | a += b--;
  1036. | return x + identity(a + b);
  1037. | }(0);
  1038. | return a + b + c + d + e;
  1039. | }
  1040. |
  1041. | int
  1042. | test3()
  1043. | {
  1044. | const auto nullary = [](){ return 0; };
  1045. | const auto unary = [](int x){ return x; };
  1046. | using nullary_t = decltype(nullary);
  1047. | using unary_t = decltype(unary);
  1048. | const auto higher1st = [](nullary_t f){ return f(); };
  1049. | const auto higher2nd = [unary](nullary_t f1){
  1050. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  1051. | };
  1052. | return higher1st(nullary) + higher2nd(nullary)(unary);
  1053. | }
  1054. |
  1055. | }
  1056. |
  1057. | namespace test_variadic_templates
  1058. | {
  1059. |
  1060. | template <int...>
  1061. | struct sum;
  1062. |
  1063. | template <int N0, int... N1toN>
  1064. | struct sum<N0, N1toN...>
  1065. | {
  1066. | static constexpr auto value = N0 + sum<N1toN...>::value;
  1067. | };
  1068. |
  1069. | template <>
  1070. | struct sum<>
  1071. | {
  1072. | static constexpr auto value = 0;
  1073. | };
  1074. |
  1075. | static_assert(sum<>::value == 0, "");
  1076. | static_assert(sum<1>::value == 1, "");
  1077. | static_assert(sum<23>::value == 23, "");
  1078. | static_assert(sum<1, 2>::value == 3, "");
  1079. | static_assert(sum<5, 5, 11>::value == 21, "");
  1080. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  1081. |
  1082. | }
  1083. |
  1084. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  1085. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  1086. | // because of this.
  1087. | namespace test_template_alias_sfinae
  1088. | {
  1089. |
  1090. | struct foo {};
  1091. |
  1092. | template<typename T>
  1093. | using member = typename T::member_type;
  1094. |
  1095. | template<typename T>
  1096. | void func(...) {}
  1097. |
  1098. | template<typename T>
  1099. | void func(member<T>*) {}
  1100. |
  1101. | void test();
  1102. |
  1103. | void test() { func<foo>(0); }
  1104. |
  1105. | }
  1106. |
  1107. | } // namespace cxx11
  1108. |
  1109. | #endif // __cplusplus >= 201103L
  1110. |
  1111. |
  1112. |
  1113. configure:4537: result: no
  1114. configure:4232: checking whether g++ supports C++11 features with +std=c++11
  1115. configure:4528: g++ +std=c++11 -c -g -O2 conftest.cpp >&5
  1116. g++: error: +std=c++11: No such file or directory
  1117. configure:4528: $? = 1
  1118. configure: failed program was:
  1119. | /* confdefs.h */
  1120. | #define PACKAGE_NAME "libsigc++"
  1121. | #define PACKAGE_TARNAME "libsigc++"
  1122. | #define PACKAGE_VERSION "2.10.2"
  1123. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  1124. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  1125. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  1126. | #define SIGCXX_MAJOR_VERSION 2
  1127. | #define SIGCXX_MINOR_VERSION 10
  1128. | #define SIGCXX_MICRO_VERSION 2
  1129. | /* end confdefs.h. */
  1130. |
  1131. |
  1132. | // If the compiler admits that it is not ready for C++11, why torture it?
  1133. | // Hopefully, this will speed up the test.
  1134. |
  1135. | #ifndef __cplusplus
  1136. |
  1137. | #error "This is not a C++ compiler"
  1138. |
  1139. | #elif __cplusplus < 201103L
  1140. |
  1141. | #error "This is not a C++11 compiler"
  1142. |
  1143. | #else
  1144. |
  1145. | namespace cxx11
  1146. | {
  1147. |
  1148. | namespace test_static_assert
  1149. | {
  1150. |
  1151. | template <typename T>
  1152. | struct check
  1153. | {
  1154. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  1155. | };
  1156. |
  1157. | }
  1158. |
  1159. | namespace test_final_override
  1160. | {
  1161. |
  1162. | struct Base
  1163. | {
  1164. | virtual void f() {}
  1165. | };
  1166. |
  1167. | struct Derived : public Base
  1168. | {
  1169. | virtual void f() override {}
  1170. | };
  1171. |
  1172. | }
  1173. |
  1174. | namespace test_double_right_angle_brackets
  1175. | {
  1176. |
  1177. | template < typename T >
  1178. | struct check {};
  1179. |
  1180. | typedef check<void> single_type;
  1181. | typedef check<check<void>> double_type;
  1182. | typedef check<check<check<void>>> triple_type;
  1183. | typedef check<check<check<check<void>>>> quadruple_type;
  1184. |
  1185. | }
  1186. |
  1187. | namespace test_decltype
  1188. | {
  1189. |
  1190. | int
  1191. | f()
  1192. | {
  1193. | int a = 1;
  1194. | decltype(a) b = 2;
  1195. | return a + b;
  1196. | }
  1197. |
  1198. | }
  1199. |
  1200. | namespace test_type_deduction
  1201. | {
  1202. |
  1203. | template < typename T1, typename T2 >
  1204. | struct is_same
  1205. | {
  1206. | static const bool value = false;
  1207. | };
  1208. |
  1209. | template < typename T >
  1210. | struct is_same<T, T>
  1211. | {
  1212. | static const bool value = true;
  1213. | };
  1214. |
  1215. | template < typename T1, typename T2 >
  1216. | auto
  1217. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  1218. | {
  1219. | return a1 + a2;
  1220. | }
  1221. |
  1222. | int
  1223. | test(const int c, volatile int v)
  1224. | {
  1225. | static_assert(is_same<int, decltype(0)>::value == true, "");
  1226. | static_assert(is_same<int, decltype(c)>::value == false, "");
  1227. | static_assert(is_same<int, decltype(v)>::value == false, "");
  1228. | auto ac = c;
  1229. | auto av = v;
  1230. | auto sumi = ac + av + 'x';
  1231. | auto sumf = ac + av + 1.0;
  1232. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  1233. | static_assert(is_same<int, decltype(av)>::value == true, "");
  1234. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  1235. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  1236. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  1237. | return (sumf > 0.0) ? sumi : add(c, v);
  1238. | }
  1239. |
  1240. | }
  1241. |
  1242. | namespace test_noexcept
  1243. | {
  1244. |
  1245. | int f() { return 0; }
  1246. | int g() noexcept { return 0; }
  1247. |
  1248. | static_assert(noexcept(f()) == false, "");
  1249. | static_assert(noexcept(g()) == true, "");
  1250. |
  1251. | }
  1252. |
  1253. | namespace test_constexpr
  1254. | {
  1255. |
  1256. | template < typename CharT >
  1257. | unsigned long constexpr
  1258. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  1259. | {
  1260. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  1261. | }
  1262. |
  1263. | template < typename CharT >
  1264. | unsigned long constexpr
  1265. | strlen_c(const CharT *const s) noexcept
  1266. | {
  1267. | return strlen_c_r(s, 0UL);
  1268. | }
  1269. |
  1270. | static_assert(strlen_c("") == 0UL, "");
  1271. | static_assert(strlen_c("1") == 1UL, "");
  1272. | static_assert(strlen_c("example") == 7UL, "");
  1273. | static_assert(strlen_c("another\0example") == 7UL, "");
  1274. |
  1275. | }
  1276. |
  1277. | namespace test_rvalue_references
  1278. | {
  1279. |
  1280. | template < int N >
  1281. | struct answer
  1282. | {
  1283. | static constexpr int value = N;
  1284. | };
  1285. |
  1286. | answer<1> f(int&) { return answer<1>(); }
  1287. | answer<2> f(const int&) { return answer<2>(); }
  1288. | answer<3> f(int&&) { return answer<3>(); }
  1289. |
  1290. | void
  1291. | test()
  1292. | {
  1293. | int i = 0;
  1294. | const int c = 0;
  1295. | static_assert(decltype(f(i))::value == 1, "");
  1296. | static_assert(decltype(f(c))::value == 2, "");
  1297. | static_assert(decltype(f(0))::value == 3, "");
  1298. | }
  1299. |
  1300. | }
  1301. |
  1302. | namespace test_uniform_initialization
  1303. | {
  1304. |
  1305. | struct test
  1306. | {
  1307. | static const int zero {};
  1308. | static const int one {1};
  1309. | };
  1310. |
  1311. | static_assert(test::zero == 0, "");
  1312. | static_assert(test::one == 1, "");
  1313. |
  1314. | }
  1315. |
  1316. | namespace test_lambdas
  1317. | {
  1318. |
  1319. | void
  1320. | test1()
  1321. | {
  1322. | auto lambda1 = [](){};
  1323. | auto lambda2 = lambda1;
  1324. | lambda1();
  1325. | lambda2();
  1326. | }
  1327. |
  1328. | int
  1329. | test2()
  1330. | {
  1331. | auto a = [](int i, int j){ return i + j; }(1, 2);
  1332. | auto b = []() -> int { return '0'; }();
  1333. | auto c = [=](){ return a + b; }();
  1334. | auto d = [&](){ return c; }();
  1335. | auto e = [a, &b](int x) mutable {
  1336. | const auto identity = [](int y){ return y; };
  1337. | for (auto i = 0; i < a; ++i)
  1338. | a += b--;
  1339. | return x + identity(a + b);
  1340. | }(0);
  1341. | return a + b + c + d + e;
  1342. | }
  1343. |
  1344. | int
  1345. | test3()
  1346. | {
  1347. | const auto nullary = [](){ return 0; };
  1348. | const auto unary = [](int x){ return x; };
  1349. | using nullary_t = decltype(nullary);
  1350. | using unary_t = decltype(unary);
  1351. | const auto higher1st = [](nullary_t f){ return f(); };
  1352. | const auto higher2nd = [unary](nullary_t f1){
  1353. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  1354. | };
  1355. | return higher1st(nullary) + higher2nd(nullary)(unary);
  1356. | }
  1357. |
  1358. | }
  1359. |
  1360. | namespace test_variadic_templates
  1361. | {
  1362. |
  1363. | template <int...>
  1364. | struct sum;
  1365. |
  1366. | template <int N0, int... N1toN>
  1367. | struct sum<N0, N1toN...>
  1368. | {
  1369. | static constexpr auto value = N0 + sum<N1toN...>::value;
  1370. | };
  1371. |
  1372. | template <>
  1373. | struct sum<>
  1374. | {
  1375. | static constexpr auto value = 0;
  1376. | };
  1377. |
  1378. | static_assert(sum<>::value == 0, "");
  1379. | static_assert(sum<1>::value == 1, "");
  1380. | static_assert(sum<23>::value == 23, "");
  1381. | static_assert(sum<1, 2>::value == 3, "");
  1382. | static_assert(sum<5, 5, 11>::value == 21, "");
  1383. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  1384. |
  1385. | }
  1386. |
  1387. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  1388. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  1389. | // because of this.
  1390. | namespace test_template_alias_sfinae
  1391. | {
  1392. |
  1393. | struct foo {};
  1394. |
  1395. | template<typename T>
  1396. | using member = typename T::member_type;
  1397. |
  1398. | template<typename T>
  1399. | void func(...) {}
  1400. |
  1401. | template<typename T>
  1402. | void func(member<T>*) {}
  1403. |
  1404. | void test();
  1405. |
  1406. | void test() { func<foo>(0); }
  1407. |
  1408. | }
  1409. |
  1410. | } // namespace cxx11
  1411. |
  1412. | #endif // __cplusplus >= 201103L
  1413. |
  1414. |
  1415. |
  1416. configure:4537: result: no
  1417. configure:4232: checking whether g++ supports C++11 features with -h std=c++11
  1418. configure:4528: g++ -h std=c++11 -c -g -O2 conftest.cpp >&5
  1419. g++: error: unrecognized command line option '-h'
  1420. configure:4528: $? = 1
  1421. configure: failed program was:
  1422. | /* confdefs.h */
  1423. | #define PACKAGE_NAME "libsigc++"
  1424. | #define PACKAGE_TARNAME "libsigc++"
  1425. | #define PACKAGE_VERSION "2.10.2"
  1426. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  1427. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  1428. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  1429. | #define SIGCXX_MAJOR_VERSION 2
  1430. | #define SIGCXX_MINOR_VERSION 10
  1431. | #define SIGCXX_MICRO_VERSION 2
  1432. | /* end confdefs.h. */
  1433. |
  1434. |
  1435. | // If the compiler admits that it is not ready for C++11, why torture it?
  1436. | // Hopefully, this will speed up the test.
  1437. |
  1438. | #ifndef __cplusplus
  1439. |
  1440. | #error "This is not a C++ compiler"
  1441. |
  1442. | #elif __cplusplus < 201103L
  1443. |
  1444. | #error "This is not a C++11 compiler"
  1445. |
  1446. | #else
  1447. |
  1448. | namespace cxx11
  1449. | {
  1450. |
  1451. | namespace test_static_assert
  1452. | {
  1453. |
  1454. | template <typename T>
  1455. | struct check
  1456. | {
  1457. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  1458. | };
  1459. |
  1460. | }
  1461. |
  1462. | namespace test_final_override
  1463. | {
  1464. |
  1465. | struct Base
  1466. | {
  1467. | virtual void f() {}
  1468. | };
  1469. |
  1470. | struct Derived : public Base
  1471. | {
  1472. | virtual void f() override {}
  1473. | };
  1474. |
  1475. | }
  1476. |
  1477. | namespace test_double_right_angle_brackets
  1478. | {
  1479. |
  1480. | template < typename T >
  1481. | struct check {};
  1482. |
  1483. | typedef check<void> single_type;
  1484. | typedef check<check<void>> double_type;
  1485. | typedef check<check<check<void>>> triple_type;
  1486. | typedef check<check<check<check<void>>>> quadruple_type;
  1487. |
  1488. | }
  1489. |
  1490. | namespace test_decltype
  1491. | {
  1492. |
  1493. | int
  1494. | f()
  1495. | {
  1496. | int a = 1;
  1497. | decltype(a) b = 2;
  1498. | return a + b;
  1499. | }
  1500. |
  1501. | }
  1502. |
  1503. | namespace test_type_deduction
  1504. | {
  1505. |
  1506. | template < typename T1, typename T2 >
  1507. | struct is_same
  1508. | {
  1509. | static const bool value = false;
  1510. | };
  1511. |
  1512. | template < typename T >
  1513. | struct is_same<T, T>
  1514. | {
  1515. | static const bool value = true;
  1516. | };
  1517. |
  1518. | template < typename T1, typename T2 >
  1519. | auto
  1520. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  1521. | {
  1522. | return a1 + a2;
  1523. | }
  1524. |
  1525. | int
  1526. | test(const int c, volatile int v)
  1527. | {
  1528. | static_assert(is_same<int, decltype(0)>::value == true, "");
  1529. | static_assert(is_same<int, decltype(c)>::value == false, "");
  1530. | static_assert(is_same<int, decltype(v)>::value == false, "");
  1531. | auto ac = c;
  1532. | auto av = v;
  1533. | auto sumi = ac + av + 'x';
  1534. | auto sumf = ac + av + 1.0;
  1535. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  1536. | static_assert(is_same<int, decltype(av)>::value == true, "");
  1537. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  1538. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  1539. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  1540. | return (sumf > 0.0) ? sumi : add(c, v);
  1541. | }
  1542. |
  1543. | }
  1544. |
  1545. | namespace test_noexcept
  1546. | {
  1547. |
  1548. | int f() { return 0; }
  1549. | int g() noexcept { return 0; }
  1550. |
  1551. | static_assert(noexcept(f()) == false, "");
  1552. | static_assert(noexcept(g()) == true, "");
  1553. |
  1554. | }
  1555. |
  1556. | namespace test_constexpr
  1557. | {
  1558. |
  1559. | template < typename CharT >
  1560. | unsigned long constexpr
  1561. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  1562. | {
  1563. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  1564. | }
  1565. |
  1566. | template < typename CharT >
  1567. | unsigned long constexpr
  1568. | strlen_c(const CharT *const s) noexcept
  1569. | {
  1570. | return strlen_c_r(s, 0UL);
  1571. | }
  1572. |
  1573. | static_assert(strlen_c("") == 0UL, "");
  1574. | static_assert(strlen_c("1") == 1UL, "");
  1575. | static_assert(strlen_c("example") == 7UL, "");
  1576. | static_assert(strlen_c("another\0example") == 7UL, "");
  1577. |
  1578. | }
  1579. |
  1580. | namespace test_rvalue_references
  1581. | {
  1582. |
  1583. | template < int N >
  1584. | struct answer
  1585. | {
  1586. | static constexpr int value = N;
  1587. | };
  1588. |
  1589. | answer<1> f(int&) { return answer<1>(); }
  1590. | answer<2> f(const int&) { return answer<2>(); }
  1591. | answer<3> f(int&&) { return answer<3>(); }
  1592. |
  1593. | void
  1594. | test()
  1595. | {
  1596. | int i = 0;
  1597. | const int c = 0;
  1598. | static_assert(decltype(f(i))::value == 1, "");
  1599. | static_assert(decltype(f(c))::value == 2, "");
  1600. | static_assert(decltype(f(0))::value == 3, "");
  1601. | }
  1602. |
  1603. | }
  1604. |
  1605. | namespace test_uniform_initialization
  1606. | {
  1607. |
  1608. | struct test
  1609. | {
  1610. | static const int zero {};
  1611. | static const int one {1};
  1612. | };
  1613. |
  1614. | static_assert(test::zero == 0, "");
  1615. | static_assert(test::one == 1, "");
  1616. |
  1617. | }
  1618. |
  1619. | namespace test_lambdas
  1620. | {
  1621. |
  1622. | void
  1623. | test1()
  1624. | {
  1625. | auto lambda1 = [](){};
  1626. | auto lambda2 = lambda1;
  1627. | lambda1();
  1628. | lambda2();
  1629. | }
  1630. |
  1631. | int
  1632. | test2()
  1633. | {
  1634. | auto a = [](int i, int j){ return i + j; }(1, 2);
  1635. | auto b = []() -> int { return '0'; }();
  1636. | auto c = [=](){ return a + b; }();
  1637. | auto d = [&](){ return c; }();
  1638. | auto e = [a, &b](int x) mutable {
  1639. | const auto identity = [](int y){ return y; };
  1640. | for (auto i = 0; i < a; ++i)
  1641. | a += b--;
  1642. | return x + identity(a + b);
  1643. | }(0);
  1644. | return a + b + c + d + e;
  1645. | }
  1646. |
  1647. | int
  1648. | test3()
  1649. | {
  1650. | const auto nullary = [](){ return 0; };
  1651. | const auto unary = [](int x){ return x; };
  1652. | using nullary_t = decltype(nullary);
  1653. | using unary_t = decltype(unary);
  1654. | const auto higher1st = [](nullary_t f){ return f(); };
  1655. | const auto higher2nd = [unary](nullary_t f1){
  1656. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  1657. | };
  1658. | return higher1st(nullary) + higher2nd(nullary)(unary);
  1659. | }
  1660. |
  1661. | }
  1662. |
  1663. | namespace test_variadic_templates
  1664. | {
  1665. |
  1666. | template <int...>
  1667. | struct sum;
  1668. |
  1669. | template <int N0, int... N1toN>
  1670. | struct sum<N0, N1toN...>
  1671. | {
  1672. | static constexpr auto value = N0 + sum<N1toN...>::value;
  1673. | };
  1674. |
  1675. | template <>
  1676. | struct sum<>
  1677. | {
  1678. | static constexpr auto value = 0;
  1679. | };
  1680. |
  1681. | static_assert(sum<>::value == 0, "");
  1682. | static_assert(sum<1>::value == 1, "");
  1683. | static_assert(sum<23>::value == 23, "");
  1684. | static_assert(sum<1, 2>::value == 3, "");
  1685. | static_assert(sum<5, 5, 11>::value == 21, "");
  1686. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  1687. |
  1688. | }
  1689. |
  1690. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  1691. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  1692. | // because of this.
  1693. | namespace test_template_alias_sfinae
  1694. | {
  1695. |
  1696. | struct foo {};
  1697. |
  1698. | template<typename T>
  1699. | using member = typename T::member_type;
  1700. |
  1701. | template<typename T>
  1702. | void func(...) {}
  1703. |
  1704. | template<typename T>
  1705. | void func(member<T>*) {}
  1706. |
  1707. | void test();
  1708. |
  1709. | void test() { func<foo>(0); }
  1710. |
  1711. | }
  1712. |
  1713. | } // namespace cxx11
  1714. |
  1715. | #endif // __cplusplus >= 201103L
  1716. |
  1717. |
  1718. |
  1719. configure:4537: result: no
  1720. configure:4232: checking whether g++ supports C++11 features with -std=c++0x
  1721. configure:4528: g++ -std=c++0x -c -g -O2 conftest.cpp >&5
  1722. /tmp/ccgoGhdt.s: Assembler messages:
  1723. /tmp/ccgoGhdt.s:12: Error: unknown .loc sub-directive `view'
  1724. /tmp/ccgoGhdt.s:12: Error: junk at end of line, first unrecognized character is `-'
  1725. /tmp/ccgoGhdt.s:15: Error: unknown .loc sub-directive `view'
  1726. /tmp/ccgoGhdt.s:15: Error: unknown pseudo-op: `.lvu1'
  1727. /tmp/ccgoGhdt.s:17: Error: unknown .loc sub-directive `view'
  1728. /tmp/ccgoGhdt.s:17: Error: unknown pseudo-op: `.lvu2'
  1729. /tmp/ccgoGhdt.s:18: Error: unknown .loc sub-directive `view'
  1730. /tmp/ccgoGhdt.s:18: Error: unknown pseudo-op: `.lvu3'
  1731. /tmp/ccgoGhdt.s:19: Error: unknown .loc sub-directive `view'
  1732. /tmp/ccgoGhdt.s:19: Error: unknown pseudo-op: `.lvu4'
  1733. /tmp/ccgoGhdt.s:32: Error: unknown .loc sub-directive `view'
  1734. /tmp/ccgoGhdt.s:32: Error: junk at end of line, first unrecognized character is `-'
  1735. /tmp/ccgoGhdt.s:34: Error: unknown .loc sub-directive `view'
  1736. /tmp/ccgoGhdt.s:34: Error: unknown pseudo-op: `.lvu6'
  1737. /tmp/ccgoGhdt.s:36: Error: unknown .loc sub-directive `view'
  1738. /tmp/ccgoGhdt.s:36: Error: unknown pseudo-op: `.lvu7'
  1739. /tmp/ccgoGhdt.s:37: Error: unknown .loc sub-directive `view'
  1740. /tmp/ccgoGhdt.s:37: Error: unknown pseudo-op: `.lvu8'
  1741. /tmp/ccgoGhdt.s:38: Error: unknown .loc sub-directive `view'
  1742. /tmp/ccgoGhdt.s:38: Error: unknown pseudo-op: `.lvu9'
  1743. /tmp/ccgoGhdt.s:39: Error: unknown .loc sub-directive `view'
  1744. /tmp/ccgoGhdt.s:39: Error: unknown pseudo-op: `.lvu10'
  1745. /tmp/ccgoGhdt.s:41: Error: unknown .loc sub-directive `view'
  1746. /tmp/ccgoGhdt.s:41: Error: unknown pseudo-op: `.lvu11'
  1747. /tmp/ccgoGhdt.s:42: Error: unknown .loc sub-directive `view'
  1748. /tmp/ccgoGhdt.s:42: Error: unknown pseudo-op: `.lvu12'
  1749. /tmp/ccgoGhdt.s:44: Error: unknown .loc sub-directive `view'
  1750. /tmp/ccgoGhdt.s:44: Error: unknown pseudo-op: `.lvu13'
  1751. /tmp/ccgoGhdt.s:46: Error: unknown .loc sub-directive `view'
  1752. /tmp/ccgoGhdt.s:46: Error: unknown pseudo-op: `.lvu14'
  1753. /tmp/ccgoGhdt.s:49: Error: unknown .loc sub-directive `view'
  1754. /tmp/ccgoGhdt.s:49: Error: unknown pseudo-op: `.lvu15'
  1755. /tmp/ccgoGhdt.s:50: Error: unknown .loc sub-directive `view'
  1756. /tmp/ccgoGhdt.s:50: Error: unknown pseudo-op: `.lvu16'
  1757. /tmp/ccgoGhdt.s:53: Error: unknown .loc sub-directive `view'
  1758. /tmp/ccgoGhdt.s:53: Error: unknown pseudo-op: `.lvu17'
  1759. /tmp/ccgoGhdt.s:54: Error: unknown .loc sub-directive `view'
  1760. /tmp/ccgoGhdt.s:54: Error: unknown pseudo-op: `.lvu18'
  1761. /tmp/ccgoGhdt.s:55: Error: unknown .loc sub-directive `view'
  1762. /tmp/ccgoGhdt.s:55: Error: unknown pseudo-op: `.lvu19'
  1763. /tmp/ccgoGhdt.s:56: Error: unknown .loc sub-directive `view'
  1764. /tmp/ccgoGhdt.s:56: Error: unknown pseudo-op: `.lvu20'
  1765. /tmp/ccgoGhdt.s:57: Error: unknown .loc sub-directive `view'
  1766. /tmp/ccgoGhdt.s:57: Error: unknown pseudo-op: `.lvu21'
  1767. /tmp/ccgoGhdt.s:58: Error: unknown .loc sub-directive `view'
  1768. /tmp/ccgoGhdt.s:58: Error: unknown pseudo-op: `.lvu22'
  1769. /tmp/ccgoGhdt.s:59: Error: unknown .loc sub-directive `view'
  1770. /tmp/ccgoGhdt.s:59: Error: unknown pseudo-op: `.lvu23'
  1771. /tmp/ccgoGhdt.s:60: Error: unknown .loc sub-directive `view'
  1772. /tmp/ccgoGhdt.s:60: Error: unknown pseudo-op: `.lvu24'
  1773. /tmp/ccgoGhdt.s:62: Error: unknown .loc sub-directive `view'
  1774. /tmp/ccgoGhdt.s:62: Error: unknown pseudo-op: `.lvu25'
  1775. /tmp/ccgoGhdt.s:65: Error: unknown .loc sub-directive `view'
  1776. /tmp/ccgoGhdt.s:65: Error: unknown pseudo-op: `.lvu26'
  1777. /tmp/ccgoGhdt.s:67: Error: unknown .loc sub-directive `view'
  1778. /tmp/ccgoGhdt.s:67: Error: unknown pseudo-op: `.lvu27'
  1779. /tmp/ccgoGhdt.s:70: Error: unknown .loc sub-directive `view'
  1780. /tmp/ccgoGhdt.s:70: Error: unknown pseudo-op: `.lvu28'
  1781. /tmp/ccgoGhdt.s:74: Error: unknown .loc sub-directive `view'
  1782. /tmp/ccgoGhdt.s:74: Error: unknown pseudo-op: `.lvu29'
  1783. /tmp/ccgoGhdt.s:79: Error: unknown .loc sub-directive `view'
  1784. /tmp/ccgoGhdt.s:79: Error: unknown pseudo-op: `.lvu30'
  1785. /tmp/ccgoGhdt.s:81: Error: unknown .loc sub-directive `view'
  1786. /tmp/ccgoGhdt.s:81: Error: unknown pseudo-op: `.lvu31'
  1787. /tmp/ccgoGhdt.s:84: Error: unknown .loc sub-directive `view'
  1788. /tmp/ccgoGhdt.s:84: Error: unknown pseudo-op: `.lvu32'
  1789. /tmp/ccgoGhdt.s:87: Error: unknown .loc sub-directive `view'
  1790. /tmp/ccgoGhdt.s:87: Error: unknown pseudo-op: `.lvu33'
  1791. /tmp/ccgoGhdt.s:98: Error: unknown .loc sub-directive `view'
  1792. /tmp/ccgoGhdt.s:98: Error: junk at end of line, first unrecognized character is `-'
  1793. /tmp/ccgoGhdt.s:101: Error: unknown .loc sub-directive `view'
  1794. /tmp/ccgoGhdt.s:101: Error: unknown pseudo-op: `.lvu35'
  1795. /tmp/ccgoGhdt.s:102: Error: unknown .loc sub-directive `view'
  1796. /tmp/ccgoGhdt.s:102: Error: unknown pseudo-op: `.lvu36'
  1797. /tmp/ccgoGhdt.s:127: Error: unknown .loc sub-directive `view'
  1798. /tmp/ccgoGhdt.s:127: Error: junk at end of line, first unrecognized character is `-'
  1799. /tmp/ccgoGhdt.s:129: Error: unknown .loc sub-directive `view'
  1800. /tmp/ccgoGhdt.s:129: Error: unknown pseudo-op: `.lvu38'
  1801. /tmp/ccgoGhdt.s:131: Error: unknown .loc sub-directive `view'
  1802. /tmp/ccgoGhdt.s:131: Error: unknown pseudo-op: `.lvu39'
  1803. /tmp/ccgoGhdt.s:132: Error: unknown .loc sub-directive `view'
  1804. /tmp/ccgoGhdt.s:132: Error: unknown pseudo-op: `.lvu40'
  1805. /tmp/ccgoGhdt.s:144: Error: unknown .loc sub-directive `view'
  1806. /tmp/ccgoGhdt.s:144: Error: junk at end of line, first unrecognized character is `-'
  1807. /tmp/ccgoGhdt.s:147: Error: unknown .loc sub-directive `view'
  1808. /tmp/ccgoGhdt.s:147: Error: unknown pseudo-op: `.lvu42'
  1809. /tmp/ccgoGhdt.s:148: Error: unknown .loc sub-directive `view'
  1810. /tmp/ccgoGhdt.s:148: Error: unknown pseudo-op: `.lvu43'
  1811. /tmp/ccgoGhdt.s:160: Error: unknown .loc sub-directive `view'
  1812. /tmp/ccgoGhdt.s:160: Error: junk at end of line, first unrecognized character is `-'
  1813. /tmp/ccgoGhdt.s:163: Error: unknown .loc sub-directive `view'
  1814. /tmp/ccgoGhdt.s:163: Error: unknown pseudo-op: `.lvu45'
  1815. /tmp/ccgoGhdt.s:164: Error: unknown .loc sub-directive `view'
  1816. /tmp/ccgoGhdt.s:164: Error: unknown pseudo-op: `.lvu46'
  1817. /tmp/ccgoGhdt.s:176: Error: unknown .loc sub-directive `view'
  1818. /tmp/ccgoGhdt.s:176: Error: junk at end of line, first unrecognized character is `-'
  1819. /tmp/ccgoGhdt.s:179: Error: unknown .loc sub-directive `view'
  1820. /tmp/ccgoGhdt.s:179: Error: unknown pseudo-op: `.lvu48'
  1821. /tmp/ccgoGhdt.s:181: Error: unknown .loc sub-directive `view'
  1822. /tmp/ccgoGhdt.s:181: Error: unknown pseudo-op: `.lvu49'
  1823. /tmp/ccgoGhdt.s:182: Error: unknown .loc sub-directive `view'
  1824. /tmp/ccgoGhdt.s:182: Error: unknown pseudo-op: `.lvu50'
  1825. /tmp/ccgoGhdt.s:183: Error: unknown .loc sub-directive `view'
  1826. /tmp/ccgoGhdt.s:183: Error: unknown pseudo-op: `.lvu51'
  1827. /tmp/ccgoGhdt.s:184: Error: unknown .loc sub-directive `view'
  1828. /tmp/ccgoGhdt.s:184: Error: unknown pseudo-op: `.lvu52'
  1829. /tmp/ccgoGhdt.s:185: Error: unknown .loc sub-directive `view'
  1830. /tmp/ccgoGhdt.s:185: Error: unknown pseudo-op: `.lvu53'
  1831. /tmp/ccgoGhdt.s:208: Error: unknown .loc sub-directive `view'
  1832. /tmp/ccgoGhdt.s:208: Error: junk at end of line, first unrecognized character is `-'
  1833. /tmp/ccgoGhdt.s:210: Error: unknown .loc sub-directive `view'
  1834. /tmp/ccgoGhdt.s:210: Error: unknown pseudo-op: `.lvu55'
  1835. /tmp/ccgoGhdt.s:212: Error: unknown .loc sub-directive `view'
  1836. /tmp/ccgoGhdt.s:212: Error: unknown pseudo-op: `.lvu56'
  1837. /tmp/ccgoGhdt.s:214: Error: unknown .loc sub-directive `view'
  1838. /tmp/ccgoGhdt.s:214: Error: unknown pseudo-op: `.lvu57'
  1839. /tmp/ccgoGhdt.s:215: Error: unknown .loc sub-directive `view'
  1840. /tmp/ccgoGhdt.s:215: Error: unknown pseudo-op: `.lvu58'
  1841. /tmp/ccgoGhdt.s:216: Error: unknown .loc sub-directive `view'
  1842. /tmp/ccgoGhdt.s:216: Error: unknown pseudo-op: `.lvu59'
  1843. /tmp/ccgoGhdt.s:217: Error: unknown .loc sub-directive `view'
  1844. /tmp/ccgoGhdt.s:217: Error: unknown pseudo-op: `.lvu60'
  1845. /tmp/ccgoGhdt.s:220: Error: unknown .loc sub-directive `view'
  1846. /tmp/ccgoGhdt.s:220: Error: unknown pseudo-op: `.lvu61'
  1847. /tmp/ccgoGhdt.s:222: Error: unknown .loc sub-directive `view'
  1848. /tmp/ccgoGhdt.s:222: Error: unknown pseudo-op: `.lvu62'
  1849. /tmp/ccgoGhdt.s:223: Error: unknown .loc sub-directive `view'
  1850. /tmp/ccgoGhdt.s:223: Error: unknown pseudo-op: `.lvu63'
  1851. /tmp/ccgoGhdt.s:226: Error: unknown .loc sub-directive `view'
  1852. /tmp/ccgoGhdt.s:226: Error: unknown pseudo-op: `.lvu64'
  1853. /tmp/ccgoGhdt.s:229: Error: unknown .loc sub-directive `view'
  1854. /tmp/ccgoGhdt.s:229: Error: unknown pseudo-op: `.lvu65'
  1855. /tmp/ccgoGhdt.s:231: Error: unknown .loc sub-directive `view'
  1856. /tmp/ccgoGhdt.s:231: Error: unknown pseudo-op: `.lvu66'
  1857. /tmp/ccgoGhdt.s:232: Error: unknown .loc sub-directive `view'
  1858. /tmp/ccgoGhdt.s:232: Error: unknown pseudo-op: `.lvu67'
  1859. /tmp/ccgoGhdt.s:235: Error: unknown .loc sub-directive `view'
  1860. /tmp/ccgoGhdt.s:235: Error: unknown pseudo-op: `.lvu68'
  1861. /tmp/ccgoGhdt.s:238: Error: unknown .loc sub-directive `view'
  1862. /tmp/ccgoGhdt.s:238: Error: unknown pseudo-op: `.lvu69'
  1863. /tmp/ccgoGhdt.s:239: Error: unknown .loc sub-directive `view'
  1864. /tmp/ccgoGhdt.s:239: Error: unknown pseudo-op: `.lvu70'
  1865. /tmp/ccgoGhdt.s:241: Error: unknown .loc sub-directive `view'
  1866. /tmp/ccgoGhdt.s:241: Error: unknown pseudo-op: `.lvu71'
  1867. /tmp/ccgoGhdt.s:243: Error: unknown .loc sub-directive `view'
  1868. /tmp/ccgoGhdt.s:243: Error: unknown pseudo-op: `.lvu72'
  1869. /tmp/ccgoGhdt.s:254: Error: unknown .loc sub-directive `view'
  1870. /tmp/ccgoGhdt.s:254: Error: unknown pseudo-op: `.lvu73'
  1871. /tmp/ccgoGhdt.s:258: Error: unknown .loc sub-directive `view'
  1872. /tmp/ccgoGhdt.s:258: Error: unknown pseudo-op: `.lvu74'
  1873. /tmp/ccgoGhdt.s:259: Error: unknown .loc sub-directive `view'
  1874. /tmp/ccgoGhdt.s:259: Error: unknown pseudo-op: `.lvu75'
  1875. /tmp/ccgoGhdt.s:262: Error: unknown .loc sub-directive `view'
  1876. /tmp/ccgoGhdt.s:262: Error: unknown pseudo-op: `.lvu76'
  1877. /tmp/ccgoGhdt.s:264: Error: unknown .loc sub-directive `view'
  1878. /tmp/ccgoGhdt.s:264: Error: unknown pseudo-op: `.lvu77'
  1879. /tmp/ccgoGhdt.s:267: Error: unknown .loc sub-directive `view'
  1880. /tmp/ccgoGhdt.s:267: Error: unknown pseudo-op: `.lvu78'
  1881. /tmp/ccgoGhdt.s:269: Error: unknown .loc sub-directive `view'
  1882. /tmp/ccgoGhdt.s:269: Error: unknown pseudo-op: `.lvu79'
  1883. /tmp/ccgoGhdt.s:273: Error: unknown .loc sub-directive `view'
  1884. /tmp/ccgoGhdt.s:273: Error: unknown pseudo-op: `.lvu80'
  1885. /tmp/ccgoGhdt.s:275: Error: unknown .loc sub-directive `view'
  1886. /tmp/ccgoGhdt.s:275: Error: unknown pseudo-op: `.lvu81'
  1887. /tmp/ccgoGhdt.s:279: Error: unknown .loc sub-directive `view'
  1888. /tmp/ccgoGhdt.s:279: Error: unknown pseudo-op: `.lvu82'
  1889. /tmp/ccgoGhdt.s:280: Error: unknown .loc sub-directive `view'
  1890. /tmp/ccgoGhdt.s:280: Error: unknown pseudo-op: `.lvu83'
  1891. /tmp/ccgoGhdt.s:281: Error: unknown .loc sub-directive `view'
  1892. /tmp/ccgoGhdt.s:281: Error: unknown pseudo-op: `.lvu84'
  1893. /tmp/ccgoGhdt.s:284: Error: unknown .loc sub-directive `view'
  1894. /tmp/ccgoGhdt.s:284: Error: unknown pseudo-op: `.lvu85'
  1895. /tmp/ccgoGhdt.s:287: Error: unknown .loc sub-directive `view'
  1896. /tmp/ccgoGhdt.s:287: Error: unknown pseudo-op: `.lvu86'
  1897. configure:4528: $? = 1
  1898. configure: failed program was:
  1899. | /* confdefs.h */
  1900. | #define PACKAGE_NAME "libsigc++"
  1901. | #define PACKAGE_TARNAME "libsigc++"
  1902. | #define PACKAGE_VERSION "2.10.2"
  1903. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  1904. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  1905. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  1906. | #define SIGCXX_MAJOR_VERSION 2
  1907. | #define SIGCXX_MINOR_VERSION 10
  1908. | #define SIGCXX_MICRO_VERSION 2
  1909. | /* end confdefs.h. */
  1910. |
  1911. |
  1912. | // If the compiler admits that it is not ready for C++11, why torture it?
  1913. | // Hopefully, this will speed up the test.
  1914. |
  1915. | #ifndef __cplusplus
  1916. |
  1917. | #error "This is not a C++ compiler"
  1918. |
  1919. | #elif __cplusplus < 201103L
  1920. |
  1921. | #error "This is not a C++11 compiler"
  1922. |
  1923. | #else
  1924. |
  1925. | namespace cxx11
  1926. | {
  1927. |
  1928. | namespace test_static_assert
  1929. | {
  1930. |
  1931. | template <typename T>
  1932. | struct check
  1933. | {
  1934. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  1935. | };
  1936. |
  1937. | }
  1938. |
  1939. | namespace test_final_override
  1940. | {
  1941. |
  1942. | struct Base
  1943. | {
  1944. | virtual void f() {}
  1945. | };
  1946. |
  1947. | struct Derived : public Base
  1948. | {
  1949. | virtual void f() override {}
  1950. | };
  1951. |
  1952. | }
  1953. |
  1954. | namespace test_double_right_angle_brackets
  1955. | {
  1956. |
  1957. | template < typename T >
  1958. | struct check {};
  1959. |
  1960. | typedef check<void> single_type;
  1961. | typedef check<check<void>> double_type;
  1962. | typedef check<check<check<void>>> triple_type;
  1963. | typedef check<check<check<check<void>>>> quadruple_type;
  1964. |
  1965. | }
  1966. |
  1967. | namespace test_decltype
  1968. | {
  1969. |
  1970. | int
  1971. | f()
  1972. | {
  1973. | int a = 1;
  1974. | decltype(a) b = 2;
  1975. | return a + b;
  1976. | }
  1977. |
  1978. | }
  1979. |
  1980. | namespace test_type_deduction
  1981. | {
  1982. |
  1983. | template < typename T1, typename T2 >
  1984. | struct is_same
  1985. | {
  1986. | static const bool value = false;
  1987. | };
  1988. |
  1989. | template < typename T >
  1990. | struct is_same<T, T>
  1991. | {
  1992. | static const bool value = true;
  1993. | };
  1994. |
  1995. | template < typename T1, typename T2 >
  1996. | auto
  1997. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  1998. | {
  1999. | return a1 + a2;
  2000. | }
  2001. |
  2002. | int
  2003. | test(const int c, volatile int v)
  2004. | {
  2005. | static_assert(is_same<int, decltype(0)>::value == true, "");
  2006. | static_assert(is_same<int, decltype(c)>::value == false, "");
  2007. | static_assert(is_same<int, decltype(v)>::value == false, "");
  2008. | auto ac = c;
  2009. | auto av = v;
  2010. | auto sumi = ac + av + 'x';
  2011. | auto sumf = ac + av + 1.0;
  2012. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  2013. | static_assert(is_same<int, decltype(av)>::value == true, "");
  2014. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  2015. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  2016. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  2017. | return (sumf > 0.0) ? sumi : add(c, v);
  2018. | }
  2019. |
  2020. | }
  2021. |
  2022. | namespace test_noexcept
  2023. | {
  2024. |
  2025. | int f() { return 0; }
  2026. | int g() noexcept { return 0; }
  2027. |
  2028. | static_assert(noexcept(f()) == false, "");
  2029. | static_assert(noexcept(g()) == true, "");
  2030. |
  2031. | }
  2032. |
  2033. | namespace test_constexpr
  2034. | {
  2035. |
  2036. | template < typename CharT >
  2037. | unsigned long constexpr
  2038. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  2039. | {
  2040. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  2041. | }
  2042. |
  2043. | template < typename CharT >
  2044. | unsigned long constexpr
  2045. | strlen_c(const CharT *const s) noexcept
  2046. | {
  2047. | return strlen_c_r(s, 0UL);
  2048. | }
  2049. |
  2050. | static_assert(strlen_c("") == 0UL, "");
  2051. | static_assert(strlen_c("1") == 1UL, "");
  2052. | static_assert(strlen_c("example") == 7UL, "");
  2053. | static_assert(strlen_c("another\0example") == 7UL, "");
  2054. |
  2055. | }
  2056. |
  2057. | namespace test_rvalue_references
  2058. | {
  2059. |
  2060. | template < int N >
  2061. | struct answer
  2062. | {
  2063. | static constexpr int value = N;
  2064. | };
  2065. |
  2066. | answer<1> f(int&) { return answer<1>(); }
  2067. | answer<2> f(const int&) { return answer<2>(); }
  2068. | answer<3> f(int&&) { return answer<3>(); }
  2069. |
  2070. | void
  2071. | test()
  2072. | {
  2073. | int i = 0;
  2074. | const int c = 0;
  2075. | static_assert(decltype(f(i))::value == 1, "");
  2076. | static_assert(decltype(f(c))::value == 2, "");
  2077. | static_assert(decltype(f(0))::value == 3, "");
  2078. | }
  2079. |
  2080. | }
  2081. |
  2082. | namespace test_uniform_initialization
  2083. | {
  2084. |
  2085. | struct test
  2086. | {
  2087. | static const int zero {};
  2088. | static const int one {1};
  2089. | };
  2090. |
  2091. | static_assert(test::zero == 0, "");
  2092. | static_assert(test::one == 1, "");
  2093. |
  2094. | }
  2095. |
  2096. | namespace test_lambdas
  2097. | {
  2098. |
  2099. | void
  2100. | test1()
  2101. | {
  2102. | auto lambda1 = [](){};
  2103. | auto lambda2 = lambda1;
  2104. | lambda1();
  2105. | lambda2();
  2106. | }
  2107. |
  2108. | int
  2109. | test2()
  2110. | {
  2111. | auto a = [](int i, int j){ return i + j; }(1, 2);
  2112. | auto b = []() -> int { return '0'; }();
  2113. | auto c = [=](){ return a + b; }();
  2114. | auto d = [&](){ return c; }();
  2115. | auto e = [a, &b](int x) mutable {
  2116. | const auto identity = [](int y){ return y; };
  2117. | for (auto i = 0; i < a; ++i)
  2118. | a += b--;
  2119. | return x + identity(a + b);
  2120. | }(0);
  2121. | return a + b + c + d + e;
  2122. | }
  2123. |
  2124. | int
  2125. | test3()
  2126. | {
  2127. | const auto nullary = [](){ return 0; };
  2128. | const auto unary = [](int x){ return x; };
  2129. | using nullary_t = decltype(nullary);
  2130. | using unary_t = decltype(unary);
  2131. | const auto higher1st = [](nullary_t f){ return f(); };
  2132. | const auto higher2nd = [unary](nullary_t f1){
  2133. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  2134. | };
  2135. | return higher1st(nullary) + higher2nd(nullary)(unary);
  2136. | }
  2137. |
  2138. | }
  2139. |
  2140. | namespace test_variadic_templates
  2141. | {
  2142. |
  2143. | template <int...>
  2144. | struct sum;
  2145. |
  2146. | template <int N0, int... N1toN>
  2147. | struct sum<N0, N1toN...>
  2148. | {
  2149. | static constexpr auto value = N0 + sum<N1toN...>::value;
  2150. | };
  2151. |
  2152. | template <>
  2153. | struct sum<>
  2154. | {
  2155. | static constexpr auto value = 0;
  2156. | };
  2157. |
  2158. | static_assert(sum<>::value == 0, "");
  2159. | static_assert(sum<1>::value == 1, "");
  2160. | static_assert(sum<23>::value == 23, "");
  2161. | static_assert(sum<1, 2>::value == 3, "");
  2162. | static_assert(sum<5, 5, 11>::value == 21, "");
  2163. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  2164. |
  2165. | }
  2166. |
  2167. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  2168. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  2169. | // because of this.
  2170. | namespace test_template_alias_sfinae
  2171. | {
  2172. |
  2173. | struct foo {};
  2174. |
  2175. | template<typename T>
  2176. | using member = typename T::member_type;
  2177. |
  2178. | template<typename T>
  2179. | void func(...) {}
  2180. |
  2181. | template<typename T>
  2182. | void func(member<T>*) {}
  2183. |
  2184. | void test();
  2185. |
  2186. | void test() { func<foo>(0); }
  2187. |
  2188. | }
  2189. |
  2190. | } // namespace cxx11
  2191. |
  2192. | #endif // __cplusplus >= 201103L
  2193. |
  2194. |
  2195. |
  2196. configure:4537: result: no
  2197. configure:4232: checking whether g++ supports C++11 features with +std=c++0x
  2198. configure:4528: g++ +std=c++0x -c -g -O2 conftest.cpp >&5
  2199. g++: error: +std=c++0x: No such file or directory
  2200. configure:4528: $? = 1
  2201. configure: failed program was:
  2202. | /* confdefs.h */
  2203. | #define PACKAGE_NAME "libsigc++"
  2204. | #define PACKAGE_TARNAME "libsigc++"
  2205. | #define PACKAGE_VERSION "2.10.2"
  2206. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  2207. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  2208. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  2209. | #define SIGCXX_MAJOR_VERSION 2
  2210. | #define SIGCXX_MINOR_VERSION 10
  2211. | #define SIGCXX_MICRO_VERSION 2
  2212. | /* end confdefs.h. */
  2213. |
  2214. |
  2215. | // If the compiler admits that it is not ready for C++11, why torture it?
  2216. | // Hopefully, this will speed up the test.
  2217. |
  2218. | #ifndef __cplusplus
  2219. |
  2220. | #error "This is not a C++ compiler"
  2221. |
  2222. | #elif __cplusplus < 201103L
  2223. |
  2224. | #error "This is not a C++11 compiler"
  2225. |
  2226. | #else
  2227. |
  2228. | namespace cxx11
  2229. | {
  2230. |
  2231. | namespace test_static_assert
  2232. | {
  2233. |
  2234. | template <typename T>
  2235. | struct check
  2236. | {
  2237. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  2238. | };
  2239. |
  2240. | }
  2241. |
  2242. | namespace test_final_override
  2243. | {
  2244. |
  2245. | struct Base
  2246. | {
  2247. | virtual void f() {}
  2248. | };
  2249. |
  2250. | struct Derived : public Base
  2251. | {
  2252. | virtual void f() override {}
  2253. | };
  2254. |
  2255. | }
  2256. |
  2257. | namespace test_double_right_angle_brackets
  2258. | {
  2259. |
  2260. | template < typename T >
  2261. | struct check {};
  2262. |
  2263. | typedef check<void> single_type;
  2264. | typedef check<check<void>> double_type;
  2265. | typedef check<check<check<void>>> triple_type;
  2266. | typedef check<check<check<check<void>>>> quadruple_type;
  2267. |
  2268. | }
  2269. |
  2270. | namespace test_decltype
  2271. | {
  2272. |
  2273. | int
  2274. | f()
  2275. | {
  2276. | int a = 1;
  2277. | decltype(a) b = 2;
  2278. | return a + b;
  2279. | }
  2280. |
  2281. | }
  2282. |
  2283. | namespace test_type_deduction
  2284. | {
  2285. |
  2286. | template < typename T1, typename T2 >
  2287. | struct is_same
  2288. | {
  2289. | static const bool value = false;
  2290. | };
  2291. |
  2292. | template < typename T >
  2293. | struct is_same<T, T>
  2294. | {
  2295. | static const bool value = true;
  2296. | };
  2297. |
  2298. | template < typename T1, typename T2 >
  2299. | auto
  2300. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  2301. | {
  2302. | return a1 + a2;
  2303. | }
  2304. |
  2305. | int
  2306. | test(const int c, volatile int v)
  2307. | {
  2308. | static_assert(is_same<int, decltype(0)>::value == true, "");
  2309. | static_assert(is_same<int, decltype(c)>::value == false, "");
  2310. | static_assert(is_same<int, decltype(v)>::value == false, "");
  2311. | auto ac = c;
  2312. | auto av = v;
  2313. | auto sumi = ac + av + 'x';
  2314. | auto sumf = ac + av + 1.0;
  2315. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  2316. | static_assert(is_same<int, decltype(av)>::value == true, "");
  2317. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  2318. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  2319. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  2320. | return (sumf > 0.0) ? sumi : add(c, v);
  2321. | }
  2322. |
  2323. | }
  2324. |
  2325. | namespace test_noexcept
  2326. | {
  2327. |
  2328. | int f() { return 0; }
  2329. | int g() noexcept { return 0; }
  2330. |
  2331. | static_assert(noexcept(f()) == false, "");
  2332. | static_assert(noexcept(g()) == true, "");
  2333. |
  2334. | }
  2335. |
  2336. | namespace test_constexpr
  2337. | {
  2338. |
  2339. | template < typename CharT >
  2340. | unsigned long constexpr
  2341. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  2342. | {
  2343. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  2344. | }
  2345. |
  2346. | template < typename CharT >
  2347. | unsigned long constexpr
  2348. | strlen_c(const CharT *const s) noexcept
  2349. | {
  2350. | return strlen_c_r(s, 0UL);
  2351. | }
  2352. |
  2353. | static_assert(strlen_c("") == 0UL, "");
  2354. | static_assert(strlen_c("1") == 1UL, "");
  2355. | static_assert(strlen_c("example") == 7UL, "");
  2356. | static_assert(strlen_c("another\0example") == 7UL, "");
  2357. |
  2358. | }
  2359. |
  2360. | namespace test_rvalue_references
  2361. | {
  2362. |
  2363. | template < int N >
  2364. | struct answer
  2365. | {
  2366. | static constexpr int value = N;
  2367. | };
  2368. |
  2369. | answer<1> f(int&) { return answer<1>(); }
  2370. | answer<2> f(const int&) { return answer<2>(); }
  2371. | answer<3> f(int&&) { return answer<3>(); }
  2372. |
  2373. | void
  2374. | test()
  2375. | {
  2376. | int i = 0;
  2377. | const int c = 0;
  2378. | static_assert(decltype(f(i))::value == 1, "");
  2379. | static_assert(decltype(f(c))::value == 2, "");
  2380. | static_assert(decltype(f(0))::value == 3, "");
  2381. | }
  2382. |
  2383. | }
  2384. |
  2385. | namespace test_uniform_initialization
  2386. | {
  2387. |
  2388. | struct test
  2389. | {
  2390. | static const int zero {};
  2391. | static const int one {1};
  2392. | };
  2393. |
  2394. | static_assert(test::zero == 0, "");
  2395. | static_assert(test::one == 1, "");
  2396. |
  2397. | }
  2398. |
  2399. | namespace test_lambdas
  2400. | {
  2401. |
  2402. | void
  2403. | test1()
  2404. | {
  2405. | auto lambda1 = [](){};
  2406. | auto lambda2 = lambda1;
  2407. | lambda1();
  2408. | lambda2();
  2409. | }
  2410. |
  2411. | int
  2412. | test2()
  2413. | {
  2414. | auto a = [](int i, int j){ return i + j; }(1, 2);
  2415. | auto b = []() -> int { return '0'; }();
  2416. | auto c = [=](){ return a + b; }();
  2417. | auto d = [&](){ return c; }();
  2418. | auto e = [a, &b](int x) mutable {
  2419. | const auto identity = [](int y){ return y; };
  2420. | for (auto i = 0; i < a; ++i)
  2421. | a += b--;
  2422. | return x + identity(a + b);
  2423. | }(0);
  2424. | return a + b + c + d + e;
  2425. | }
  2426. |
  2427. | int
  2428. | test3()
  2429. | {
  2430. | const auto nullary = [](){ return 0; };
  2431. | const auto unary = [](int x){ return x; };
  2432. | using nullary_t = decltype(nullary);
  2433. | using unary_t = decltype(unary);
  2434. | const auto higher1st = [](nullary_t f){ return f(); };
  2435. | const auto higher2nd = [unary](nullary_t f1){
  2436. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  2437. | };
  2438. | return higher1st(nullary) + higher2nd(nullary)(unary);
  2439. | }
  2440. |
  2441. | }
  2442. |
  2443. | namespace test_variadic_templates
  2444. | {
  2445. |
  2446. | template <int...>
  2447. | struct sum;
  2448. |
  2449. | template <int N0, int... N1toN>
  2450. | struct sum<N0, N1toN...>
  2451. | {
  2452. | static constexpr auto value = N0 + sum<N1toN...>::value;
  2453. | };
  2454. |
  2455. | template <>
  2456. | struct sum<>
  2457. | {
  2458. | static constexpr auto value = 0;
  2459. | };
  2460. |
  2461. | static_assert(sum<>::value == 0, "");
  2462. | static_assert(sum<1>::value == 1, "");
  2463. | static_assert(sum<23>::value == 23, "");
  2464. | static_assert(sum<1, 2>::value == 3, "");
  2465. | static_assert(sum<5, 5, 11>::value == 21, "");
  2466. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  2467. |
  2468. | }
  2469. |
  2470. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  2471. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  2472. | // because of this.
  2473. | namespace test_template_alias_sfinae
  2474. | {
  2475. |
  2476. | struct foo {};
  2477. |
  2478. | template<typename T>
  2479. | using member = typename T::member_type;
  2480. |
  2481. | template<typename T>
  2482. | void func(...) {}
  2483. |
  2484. | template<typename T>
  2485. | void func(member<T>*) {}
  2486. |
  2487. | void test();
  2488. |
  2489. | void test() { func<foo>(0); }
  2490. |
  2491. | }
  2492. |
  2493. | } // namespace cxx11
  2494. |
  2495. | #endif // __cplusplus >= 201103L
  2496. |
  2497. |
  2498. |
  2499. configure:4537: result: no
  2500. configure:4232: checking whether g++ supports C++11 features with -h std=c++0x
  2501. configure:4528: g++ -h std=c++0x -c -g -O2 conftest.cpp >&5
  2502. g++: error: unrecognized command line option '-h'
  2503. configure:4528: $? = 1
  2504. configure: failed program was:
  2505. | /* confdefs.h */
  2506. | #define PACKAGE_NAME "libsigc++"
  2507. | #define PACKAGE_TARNAME "libsigc++"
  2508. | #define PACKAGE_VERSION "2.10.2"
  2509. | #define PACKAGE_STRING "libsigc++ 2.10.2"
  2510. | #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  2511. | #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  2512. | #define SIGCXX_MAJOR_VERSION 2
  2513. | #define SIGCXX_MINOR_VERSION 10
  2514. | #define SIGCXX_MICRO_VERSION 2
  2515. | /* end confdefs.h. */
  2516. |
  2517. |
  2518. | // If the compiler admits that it is not ready for C++11, why torture it?
  2519. | // Hopefully, this will speed up the test.
  2520. |
  2521. | #ifndef __cplusplus
  2522. |
  2523. | #error "This is not a C++ compiler"
  2524. |
  2525. | #elif __cplusplus < 201103L
  2526. |
  2527. | #error "This is not a C++11 compiler"
  2528. |
  2529. | #else
  2530. |
  2531. | namespace cxx11
  2532. | {
  2533. |
  2534. | namespace test_static_assert
  2535. | {
  2536. |
  2537. | template <typename T>
  2538. | struct check
  2539. | {
  2540. | static_assert(sizeof(int) <= sizeof(T), "not big enough");
  2541. | };
  2542. |
  2543. | }
  2544. |
  2545. | namespace test_final_override
  2546. | {
  2547. |
  2548. | struct Base
  2549. | {
  2550. | virtual void f() {}
  2551. | };
  2552. |
  2553. | struct Derived : public Base
  2554. | {
  2555. | virtual void f() override {}
  2556. | };
  2557. |
  2558. | }
  2559. |
  2560. | namespace test_double_right_angle_brackets
  2561. | {
  2562. |
  2563. | template < typename T >
  2564. | struct check {};
  2565. |
  2566. | typedef check<void> single_type;
  2567. | typedef check<check<void>> double_type;
  2568. | typedef check<check<check<void>>> triple_type;
  2569. | typedef check<check<check<check<void>>>> quadruple_type;
  2570. |
  2571. | }
  2572. |
  2573. | namespace test_decltype
  2574. | {
  2575. |
  2576. | int
  2577. | f()
  2578. | {
  2579. | int a = 1;
  2580. | decltype(a) b = 2;
  2581. | return a + b;
  2582. | }
  2583. |
  2584. | }
  2585. |
  2586. | namespace test_type_deduction
  2587. | {
  2588. |
  2589. | template < typename T1, typename T2 >
  2590. | struct is_same
  2591. | {
  2592. | static const bool value = false;
  2593. | };
  2594. |
  2595. | template < typename T >
  2596. | struct is_same<T, T>
  2597. | {
  2598. | static const bool value = true;
  2599. | };
  2600. |
  2601. | template < typename T1, typename T2 >
  2602. | auto
  2603. | add(T1 a1, T2 a2) -> decltype(a1 + a2)
  2604. | {
  2605. | return a1 + a2;
  2606. | }
  2607. |
  2608. | int
  2609. | test(const int c, volatile int v)
  2610. | {
  2611. | static_assert(is_same<int, decltype(0)>::value == true, "");
  2612. | static_assert(is_same<int, decltype(c)>::value == false, "");
  2613. | static_assert(is_same<int, decltype(v)>::value == false, "");
  2614. | auto ac = c;
  2615. | auto av = v;
  2616. | auto sumi = ac + av + 'x';
  2617. | auto sumf = ac + av + 1.0;
  2618. | static_assert(is_same<int, decltype(ac)>::value == true, "");
  2619. | static_assert(is_same<int, decltype(av)>::value == true, "");
  2620. | static_assert(is_same<int, decltype(sumi)>::value == true, "");
  2621. | static_assert(is_same<int, decltype(sumf)>::value == false, "");
  2622. | static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
  2623. | return (sumf > 0.0) ? sumi : add(c, v);
  2624. | }
  2625. |
  2626. | }
  2627. |
  2628. | namespace test_noexcept
  2629. | {
  2630. |
  2631. | int f() { return 0; }
  2632. | int g() noexcept { return 0; }
  2633. |
  2634. | static_assert(noexcept(f()) == false, "");
  2635. | static_assert(noexcept(g()) == true, "");
  2636. |
  2637. | }
  2638. |
  2639. | namespace test_constexpr
  2640. | {
  2641. |
  2642. | template < typename CharT >
  2643. | unsigned long constexpr
  2644. | strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
  2645. | {
  2646. | return *s ? strlen_c_r(s + 1, acc + 1) : acc;
  2647. | }
  2648. |
  2649. | template < typename CharT >
  2650. | unsigned long constexpr
  2651. | strlen_c(const CharT *const s) noexcept
  2652. | {
  2653. | return strlen_c_r(s, 0UL);
  2654. | }
  2655. |
  2656. | static_assert(strlen_c("") == 0UL, "");
  2657. | static_assert(strlen_c("1") == 1UL, "");
  2658. | static_assert(strlen_c("example") == 7UL, "");
  2659. | static_assert(strlen_c("another\0example") == 7UL, "");
  2660. |
  2661. | }
  2662. |
  2663. | namespace test_rvalue_references
  2664. | {
  2665. |
  2666. | template < int N >
  2667. | struct answer
  2668. | {
  2669. | static constexpr int value = N;
  2670. | };
  2671. |
  2672. | answer<1> f(int&) { return answer<1>(); }
  2673. | answer<2> f(const int&) { return answer<2>(); }
  2674. | answer<3> f(int&&) { return answer<3>(); }
  2675. |
  2676. | void
  2677. | test()
  2678. | {
  2679. | int i = 0;
  2680. | const int c = 0;
  2681. | static_assert(decltype(f(i))::value == 1, "");
  2682. | static_assert(decltype(f(c))::value == 2, "");
  2683. | static_assert(decltype(f(0))::value == 3, "");
  2684. | }
  2685. |
  2686. | }
  2687. |
  2688. | namespace test_uniform_initialization
  2689. | {
  2690. |
  2691. | struct test
  2692. | {
  2693. | static const int zero {};
  2694. | static const int one {1};
  2695. | };
  2696. |
  2697. | static_assert(test::zero == 0, "");
  2698. | static_assert(test::one == 1, "");
  2699. |
  2700. | }
  2701. |
  2702. | namespace test_lambdas
  2703. | {
  2704. |
  2705. | void
  2706. | test1()
  2707. | {
  2708. | auto lambda1 = [](){};
  2709. | auto lambda2 = lambda1;
  2710. | lambda1();
  2711. | lambda2();
  2712. | }
  2713. |
  2714. | int
  2715. | test2()
  2716. | {
  2717. | auto a = [](int i, int j){ return i + j; }(1, 2);
  2718. | auto b = []() -> int { return '0'; }();
  2719. | auto c = [=](){ return a + b; }();
  2720. | auto d = [&](){ return c; }();
  2721. | auto e = [a, &b](int x) mutable {
  2722. | const auto identity = [](int y){ return y; };
  2723. | for (auto i = 0; i < a; ++i)
  2724. | a += b--;
  2725. | return x + identity(a + b);
  2726. | }(0);
  2727. | return a + b + c + d + e;
  2728. | }
  2729. |
  2730. | int
  2731. | test3()
  2732. | {
  2733. | const auto nullary = [](){ return 0; };
  2734. | const auto unary = [](int x){ return x; };
  2735. | using nullary_t = decltype(nullary);
  2736. | using unary_t = decltype(unary);
  2737. | const auto higher1st = [](nullary_t f){ return f(); };
  2738. | const auto higher2nd = [unary](nullary_t f1){
  2739. | return [unary, f1](unary_t f2){ return f2(unary(f1())); };
  2740. | };
  2741. | return higher1st(nullary) + higher2nd(nullary)(unary);
  2742. | }
  2743. |
  2744. | }
  2745. |
  2746. | namespace test_variadic_templates
  2747. | {
  2748. |
  2749. | template <int...>
  2750. | struct sum;
  2751. |
  2752. | template <int N0, int... N1toN>
  2753. | struct sum<N0, N1toN...>
  2754. | {
  2755. | static constexpr auto value = N0 + sum<N1toN...>::value;
  2756. | };
  2757. |
  2758. | template <>
  2759. | struct sum<>
  2760. | {
  2761. | static constexpr auto value = 0;
  2762. | };
  2763. |
  2764. | static_assert(sum<>::value == 0, "");
  2765. | static_assert(sum<1>::value == 1, "");
  2766. | static_assert(sum<23>::value == 23, "");
  2767. | static_assert(sum<1, 2>::value == 3, "");
  2768. | static_assert(sum<5, 5, 11>::value == 21, "");
  2769. | static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
  2770. |
  2771. | }
  2772. |
  2773. | // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
  2774. | // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
  2775. | // because of this.
  2776. | namespace test_template_alias_sfinae
  2777. | {
  2778. |
  2779. | struct foo {};
  2780. |
  2781. | template<typename T>
  2782. | using member = typename T::member_type;
  2783. |
  2784. | template<typename T>
  2785. | void func(...) {}
  2786. |
  2787. | template<typename T>
  2788. | void func(member<T>*) {}
  2789. |
  2790. | void test();
  2791. |
  2792. | void test() { func<foo>(0); }
  2793. |
  2794. | }
  2795. |
  2796. | } // namespace cxx11
  2797. |
  2798. | #endif // __cplusplus >= 201103L
  2799. |
  2800. |
  2801. |
  2802. configure:4537: result: no
  2803. configure:4561: error: *** A compiler with support for C++11 language features is required.
  2804.  
  2805. ## ---------------- ##
  2806. ## Cache variables. ##
  2807. ## ---------------- ##
  2808.  
  2809. ac_cv_cxx_compiler_gnu=yes
  2810. ac_cv_env_ACLOCAL_FLAGS_set=
  2811. ac_cv_env_ACLOCAL_FLAGS_value=
  2812. ac_cv_env_CCC_set=
  2813. ac_cv_env_CCC_value=
  2814. ac_cv_env_CC_set=
  2815. ac_cv_env_CC_value=
  2816. ac_cv_env_CFLAGS_set=
  2817. ac_cv_env_CFLAGS_value=
  2818. ac_cv_env_CPPFLAGS_set=
  2819. ac_cv_env_CPPFLAGS_value=
  2820. ac_cv_env_CPP_set=
  2821. ac_cv_env_CPP_value=
  2822. ac_cv_env_CXXCPP_set=
  2823. ac_cv_env_CXXCPP_value=
  2824. ac_cv_env_CXXFLAGS_set=
  2825. ac_cv_env_CXXFLAGS_value=
  2826. ac_cv_env_CXX_set=
  2827. ac_cv_env_CXX_value=
  2828. ac_cv_env_DOT_set=
  2829. ac_cv_env_DOT_value=
  2830. ac_cv_env_DOXYGEN_set=
  2831. ac_cv_env_DOXYGEN_value=
  2832. ac_cv_env_LDFLAGS_set=
  2833. ac_cv_env_LDFLAGS_value=
  2834. ac_cv_env_LIBS_set=
  2835. ac_cv_env_LIBS_value=
  2836. ac_cv_env_LT_SYS_LIBRARY_PATH_set=
  2837. ac_cv_env_LT_SYS_LIBRARY_PATH_value=
  2838. ac_cv_env_M4_set=
  2839. ac_cv_env_M4_value=
  2840. ac_cv_env_PERL_set=
  2841. ac_cv_env_PERL_value=
  2842. ac_cv_env_PKG_CONFIG_LIBDIR_set=
  2843. ac_cv_env_PKG_CONFIG_LIBDIR_value=
  2844. ac_cv_env_PKG_CONFIG_PATH_set=
  2845. ac_cv_env_PKG_CONFIG_PATH_value=
  2846. ac_cv_env_PKG_CONFIG_set=
  2847. ac_cv_env_PKG_CONFIG_value=
  2848. ac_cv_env_XSLTPROC_set=
  2849. ac_cv_env_XSLTPROC_value=
  2850. ac_cv_env_build_alias_set=
  2851. ac_cv_env_build_alias_value=
  2852. ac_cv_env_host_alias_set=
  2853. ac_cv_env_host_alias_value=
  2854. ac_cv_env_target_alias_set=
  2855. ac_cv_env_target_alias_value=
  2856. ac_cv_exeext=.exe
  2857. ac_cv_objext=o
  2858. ac_cv_path_install='/usr/bin/install -c'
  2859. ac_cv_path_mkdir=/usr/bin/mkdir
  2860. ac_cv_prog_AWK=gawk
  2861. ac_cv_prog_ac_ct_CXX=g++
  2862. ac_cv_prog_cxx_g=yes
  2863. ac_cv_prog_make_make_set=yes
  2864. am_cv_CXX_dependencies_compiler_type=gcc3
  2865. am_cv_make_support_nested_variables=yes
  2866. am_cv_prog_tar_ustar=gnutar
  2867. ax_cv_cxx_compile_cxx11=no
  2868. ax_cv_cxx_compile_cxx11__h_std_cpp0x=no
  2869. ax_cv_cxx_compile_cxx11__h_std_cpp11=no
  2870. ax_cv_cxx_compile_cxx11__std_cpp0x=no
  2871. ax_cv_cxx_compile_cxx11__std_cpp11=no
  2872. ax_cv_cxx_compile_cxx11_pstd_cpp0x=no
  2873. ax_cv_cxx_compile_cxx11_pstd_cpp11=no
  2874.  
  2875. ## ----------------- ##
  2876. ## Output variables. ##
  2877. ## ----------------- ##
  2878.  
  2879. ACLOCAL='${SHELL} /home/admin/libsigc++-2.10.2/build/missing aclocal-1.16'
  2880. ACLOCAL_FLAGS=''
  2881. AMDEPBACKSLASH='\'
  2882. AMDEP_FALSE='#'
  2883. AMDEP_TRUE=''
  2884. AMTAR='$${TAR-tar}'
  2885. AM_BACKSLASH='\'
  2886. AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
  2887. AM_DEFAULT_VERBOSITY='0'
  2888. AM_V='$(V)'
  2889. AR=''
  2890. AS=''
  2891. AUTOCONF='${SHELL} /home/admin/libsigc++-2.10.2/build/missing autoconf'
  2892. AUTOHEADER='${SHELL} /home/admin/libsigc++-2.10.2/build/missing autoheader'
  2893. AUTOMAKE='${SHELL} /home/admin/libsigc++-2.10.2/build/missing automake-1.16'
  2894. AWK='gawk'
  2895. BOOST_CPPFLAGS=''
  2896. BOOST_LDFLAGS=''
  2897. BOOST_SYSTEM_LIB=''
  2898. BOOST_TIMER_LIB=''
  2899. CC=''
  2900. CCDEPMODE=''
  2901. CFLAGS=''
  2902. CPP=''
  2903. CPPFLAGS=''
  2904. CXX='g++'
  2905. CXXCPP=''
  2906. CXXDEPMODE='depmode=gcc3'
  2907. CXXFLAGS='-g -O2'
  2908. CYGPATH_W='cygpath -w'
  2909. DEFS=''
  2910. DEPDIR='.deps'
  2911. DISABLE_DEPRECATED_API_FALSE=''
  2912. DISABLE_DEPRECATED_API_TRUE=''
  2913. DIST_DOCTOOLS_FALSE='#'
  2914. DIST_DOCTOOLS_TRUE=''
  2915. DLLTOOL=''
  2916. DOCINSTALL_FLAGS=''
  2917. DOT=''
  2918. DOXYGEN=''
  2919. DOXYGEN_TAGFILES=''
  2920. DSYMUTIL=''
  2921. DUMPBIN=''
  2922. ECHO_C=''
  2923. ECHO_N='-n'
  2924. ECHO_T=''
  2925. EGREP=''
  2926. ENABLE_DOCUMENTATION_FALSE=''
  2927. ENABLE_DOCUMENTATION_TRUE=''
  2928. EXEEXT='.exe'
  2929. FGREP=''
  2930. GREP=''
  2931. HAVE_CXX11=''
  2932. INSTALL_DATA='${INSTALL} -m 644'
  2933. INSTALL_PROGRAM='${INSTALL}'
  2934. INSTALL_SCRIPT='${INSTALL}'
  2935. INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
  2936. LD=''
  2937. LDFLAGS=''
  2938. LIBOBJS=''
  2939. LIBS=''
  2940. LIBTOOL=''
  2941. LIPO=''
  2942. LN_S=''
  2943. LTLIBOBJS=''
  2944. LT_SYS_LIBRARY_PATH=''
  2945. M4=''
  2946. MAINT='#'
  2947. MAINTAINER_MODE_FALSE=''
  2948. MAINTAINER_MODE_TRUE='#'
  2949. MAKEINFO='${SHELL} /home/admin/libsigc++-2.10.2/build/missing makeinfo'
  2950. MANIFEST_TOOL=''
  2951. MKDIR_P='/usr/bin/mkdir -p'
  2952. MMDOCTOOLDIR='${top_srcdir}/docs'
  2953. NM=''
  2954. NMEDIT=''
  2955. OBJDUMP=''
  2956. OBJEXT='o'
  2957. OTOOL64=''
  2958. OTOOL=''
  2959. PACKAGE='libsigc++'
  2960. PACKAGE_BUGREPORT='https://github.com/libsigcplusplus/libsigcplusplus/issues/'
  2961. PACKAGE_NAME='libsigc++'
  2962. PACKAGE_STRING='libsigc++ 2.10.2'
  2963. PACKAGE_TARNAME='libsigc++'
  2964. PACKAGE_URL='https://libsigcplusplus.github.io/libsigcplusplus/'
  2965. PACKAGE_VERSION='2.10.2'
  2966. PATH_SEPARATOR=':'
  2967. PERL=''
  2968. PKG_CONFIG=''
  2969. PKG_CONFIG_LIBDIR=''
  2970. PKG_CONFIG_PATH=''
  2971. RANLIB=''
  2972. SED=''
  2973. SET_MAKE=''
  2974. SHELL='/bin/sh'
  2975. SIGCXX_API_VERSION='2.0'
  2976. SIGCXX_MAJOR_VERSION='2'
  2977. SIGCXX_MICRO_VERSION='2'
  2978. SIGCXX_MINOR_VERSION='10'
  2979. SIGCXX_MODULE_NAME='sigc++-2.0'
  2980. SIGCXX_VERSION='2.10.2'
  2981. SIGC_BUILD_BENCHMARK_FALSE=''
  2982. SIGC_BUILD_BENCHMARK_TRUE=''
  2983. SIGC_WXXFLAGS=''
  2984. STRIP=''
  2985. VERSION='2.10.2'
  2986. XSLTPROC=''
  2987. ac_ct_AR=''
  2988. ac_ct_CC=''
  2989. ac_ct_CXX='g++'
  2990. ac_ct_DUMPBIN=''
  2991. am__EXEEXT_FALSE=''
  2992. am__EXEEXT_TRUE=''
  2993. am__fastdepCC_FALSE=''
  2994. am__fastdepCC_TRUE=''
  2995. am__fastdepCXX_FALSE='#'
  2996. am__fastdepCXX_TRUE=''
  2997. am__include='include'
  2998. am__isrc=''
  2999. am__leading_dot='.'
  3000. am__nodep='_no'
  3001. am__quote=''
  3002. am__tar='tar --format=ustar -chf - "$$tardir"'
  3003. am__untar='tar -xf -'
  3004. bindir='${exec_prefix}/bin'
  3005. build=''
  3006. build_alias=''
  3007. build_cpu=''
  3008. build_os=''
  3009. build_vendor=''
  3010. datadir='${datarootdir}'
  3011. datarootdir='${prefix}/share'
  3012. docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
  3013. dvidir='${docdir}'
  3014. exec_prefix='NONE'
  3015. host=''
  3016. host_alias=''
  3017. host_cpu=''
  3018. host_os=''
  3019. host_vendor=''
  3020. htmldir='${docdir}'
  3021. includedir='${prefix}/include'
  3022. infodir='${datarootdir}/info'
  3023. install_sh='${SHELL} /home/admin/libsigc++-2.10.2/build/install-sh'
  3024. libdir='${exec_prefix}/lib'
  3025. libexecdir='${exec_prefix}/libexec'
  3026. localedir='${datarootdir}/locale'
  3027. localstatedir='${prefix}/var'
  3028. mandir='${datarootdir}/man'
  3029. mkdir_p='$(MKDIR_P)'
  3030. oldincludedir='/usr/include'
  3031. pdfdir='${docdir}'
  3032. prefix='NONE'
  3033. program_transform_name='s,x,x,'
  3034. psdir='${docdir}'
  3035. runstatedir='${localstatedir}/run'
  3036. sbindir='${exec_prefix}/sbin'
  3037. sharedstatedir='${prefix}/com'
  3038. sysconfdir='${prefix}/etc'
  3039. target_alias=''
  3040.  
  3041. ## ----------- ##
  3042. ## confdefs.h. ##
  3043. ## ----------- ##
  3044.  
  3045. /* confdefs.h */
  3046. #define PACKAGE_NAME "libsigc++"
  3047. #define PACKAGE_TARNAME "libsigc++"
  3048. #define PACKAGE_VERSION "2.10.2"
  3049. #define PACKAGE_STRING "libsigc++ 2.10.2"
  3050. #define PACKAGE_BUGREPORT "https://github.com/libsigcplusplus/libsigcplusplus/issues/"
  3051. #define PACKAGE_URL "https://libsigcplusplus.github.io/libsigcplusplus/"
  3052. #define SIGCXX_MAJOR_VERSION 2
  3053. #define SIGCXX_MINOR_VERSION 10
  3054. #define SIGCXX_MICRO_VERSION 2
  3055.  
  3056. configure: exit 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement