[
https://issues.apache.org/jira/browse/AMQCPP-756?focusedWorklogId=959569&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-959569
]
ASF GitHub Bot logged work on AMQCPP-756:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 01/Mar/25 18:37
Start Date: 01/Mar/25 18:37
Worklog Time Spent: 10m
Work Description: artnaseef commented on PR #21:
URL: https://github.com/apache/activemq-cpp/pull/21#issuecomment-2692359518
I have some time this weekend to look at this. I just tried a first attempt
at a build on my 20.04 Ubuntu system with gcc version 9.4.0 and got the
following complaint:
```
./decaf/lang/Throwable.h:49:28: error: expected ‘;’ at end of member
declaration
49 | virtual ~Throwable() noexcept =
default;
```
So I was wondering if this is an issue with the C++ standard applied.
Checking the actual compile line, I don't see a standard being chosen:
```
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../.. -ansi -pedantic -DLINUX
-D_REENTRANT -D_GNU_SOURCE -I/usr/include/apr-1.0 -W -Wall -Wextra -Wconversion
-fPIC -fstrict-aliasing -Wstrict-aliasing=2 -Wno-long-long -g -O2 -pthread -MT
activemq/cmsutil/libactivemq_cpp_la-CmsAccessor.lo -MD -MP -MF
activemq/cmsutil/.deps/libactivemq_cpp_la-CmsAccessor.Tpo -c
activemq/cmsutil/CmsAccessor.cpp -fPIC -DPIC -o
activemq/cmsutil/.libs/libactivemq_cpp_la-CmsAccessor.o
```
Can you help me track this down? Does the `configure` script check which
C++ standard to apply? Or does the newer version of `g++` assume a different
default standard?
Issue Time Tracking
-------------------
Worklog Id: (was: 959569)
Time Spent: 50m (was: 40m)
> Upgrade for C++17 compliance
> ----------------------------
>
> Key: AMQCPP-756
> URL: https://issues.apache.org/jira/browse/AMQCPP-756
> Project: ActiveMQ C++ Client
> Issue Type: Improvement
> Components: CMS Impl
> Affects Versions: 3.9.4, 3.9.5
> Environment: Linux Ubuntu 22.04
> GCC 11.4.0
> OpenSSL 1.1.0
> Cppunit 1.15.1
> Reporter: Arjun Ray
> Assignee: Timothy A. Bish
> Priority: Major
> Fix For: 3.9.5
>
> Attachments: fixautoptr-1.diff, fixerrs-1.diff, fixinits-1.diff,
> fixwarns-1.diff
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> Changes covered:
> # Global replacement of std::auto_ptr with std::unique_ptr.
> # 6 fixups for this change (5 initializers, 1 missing include file).
> # Compiling with GCC 11.4.0 yields
> ## 1 error from 'make' and 5 errors from 'make check'
> ## 197 warnings from 'make' and 35 from 'make check'.
> # 6 + 38 files modified to eliminate these issues. No change in user-facing
> APIs.
> # All tests pass (2070 regular, 133 integration).
> Odds and ends:
> # Temporary script added to make up for missing cppunit-config (obsolete and
> removed from distributions).
> # More generally, the m4 macros used to configure the build are badly out of
> date and need to be upgraded (at which point the script above can be removed).
> # Global replacement of 'throw()' with 'noexcept' is advisable, as the
> 'throw()' alias has been removed in C++20.
> # OpenSSL version >= 1.1.0
> This Jira is to label the set of changes properly in a pull request to be
> submitted in Github. Files will also be available in a 'forked' version on
> Github at [https://github.com/arayq2/activemq-cpp.]
>
> 4 attachments;
> # Patch for eliminating redundant initializers (fixinits.diff).
> # Patch for global replacement of auto_ptr (fixautoptr.diff).
> # Patch for fixing errors from C++17 compilation (fixerrs.diff).
> # Patch for fixing warnings from C++17 compilation (fixwarns.diff)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact