-
Notifications
You must be signed in to change notification settings - Fork 577
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Teuchos: Add operator bool
to RCP
class
#6608
Comments
This type of operator needs to be added very carefully or it can create a mess with the type system. I know there are special methods to implement this type of method safely for its intended usage but it would need to be done carefully to match how |
@bartlettroscoe Looking at the |
Okay, it looks like C++11 has saved the day here by allowing conversion functions to be marked This would be a great PR to add. Thanks! |
Testing downstream packages has produced some failures, and I am now checking to see if they involve RCPs. They first couple I have looked at have not. I’ll keep checking as time permits. |
That is troubling. I would have to see the details of that. Can you post a WIP PR so I can inspect this? |
I will push my changes and make that PR shortly. Right now, I am in the middle of running the same tests (enabling Teuchos and all forward dependent packages) with my changes commented out. So far, the I am seeing the same failures, so my changes can't be responsible. It's probably a pretty non-standard build. I had to disable Xpetra, STK, and PyTrilinos, as well as ML tests, ROL examples, and TrilinosCoupling examples in order to get it to build. It produces 2283 tests. Here is my `cmake` invocation:
#! /bin/sh
EXTRA_ARGS=$@
BASE=`conda info | grep "active env location" | cut -d: -f2 | sed -e 's/^[[:space:]]*//'`
MPI_BASE=$BASE
rm -f CMakeCache.txt
cmake \
-D CMAKE_BUILD_TYPE:STRING=DEBUG \
-D CMAKE_INSTALL_PREFIX:PATH=install \
-D BUILD_SHARED_LIBS:BOOL=OFF \
-D TPL_ENABLE_MPI:BOOL=ON \
-D MPI_BASE_DIR:PATH=$MPI_BASE \
-D MPI_EXEC:FILEPATH=$MPI_BASE/bin/mpiexec \
-D MPI_EXEC_PRE_NUMPROCS_FLAGS:STRING="--mca;oob_tcp_if_include;lo0" \
-D TPL_ENABLE_BoostLib:BOOL=ON \
-D TPL_ENABLE_HDF5:BOOL=ON \
-D Netcdf_LIBRARY_DIRS=$BASE/lib \
-D Netcdf_INCLUDE_DIRS=$BASE/include \
-D Matio_LIBRARY_DIRS=$BASE/lib \
-D X11_LIBRARY_DIRS=$BASE/lib \
-D Trilinos_ENABLE_EXPORT_MAKEFILES:BOOL=OFF \
-D Trilinos_ENABLE_ALL_FORWARD_DEP_PACKAGES:BOOL=ON \
-D Trilinos_ENABLE_Fortran:BOOL=OFF \
-D Trilinos_ENABLE_TESTS:BOOL=ON \
-D Trilinos_ENABLE_EXAMPLES:BOOL=ON \
-D Trilinos_ENABLE_Teuchos:BOOL=ON \
-D Trilinos_ENABLE_Thyra:BOOL=ON \
-D Trilinos_ENABLE_Xpetra:BOOL=OFF \
-D Trilinos_ENABLE_STK:BOOL=OFF \
-D Trilinos_ENABLE_PyTrilinos:BOOL=OFF \
-D ML_ENABLE_TESTS:BOOL=OFF \
-D ROL_ENABLE_EXAMPLES:BOOL=OFF \
-D TrilinosCouplings_ENABLE_EXAMPLES:BOOL=OFF \
$EXTRA_ARGS \
.. I use Anaconda to provide TPL support, which explains my Here are the errors I am seeing:
Note: all of the failures were reproduced with my changes commented out (plus a couple of new timeouts...) |
@pyt-viper What's with the |
@pyt-viper, the Trilinos PR tester will run some standard builds and if those pass, we should be in pretty good shape. |
@bartlettroscoe do you need to review the PR to set it in motion? |
@mhoemmen that is a relic from an |
@pyt-viper, if you are not a member of the Trilinos GitHub project, then yes, I will need to approve, I think to trigger a PR testing build. See: Also, the the merge base branch needs to be the 'develop' branch, not the 'master' branch'. |
Yeah, it's all ready to go, #6641 |
Addressed by PR #6641 |
Enhancement
@trilinos/teuchos
Teuchos::RCP
does not have anoperator bool
, but could benefit from one. This would make it behave more likestd:shared_ptr
. See #6607 for a justification.Blocks #6607
The text was updated successfully, but these errors were encountered: