Skip to content

ENH: Update compiler macros#810

Merged
hjmjohnson merged 4 commits into
InsightSoftwareConsortium:masterfrom
maekclena:macro_cleanup
May 7, 2019
Merged

ENH: Update compiler macros#810
hjmjohnson merged 4 commits into
InsightSoftwareConsortium:masterfrom
maekclena:macro_cleanup

Conversation

@maekclena
Copy link
Copy Markdown
Contributor

Implements #543.

The required compiler versions come from the ITK Software Guide, book 1, chapter 2. For the Intel compiler I picked the last version compatible with Visual Studio 2010.

Copy link
Copy Markdown
Member

@dzenanz dzenanz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is good you have taken this up. Some suggestions in-line.

Comment thread Modules/Core/Common/include/itkMacro.h Outdated
Comment thread Modules/Core/Common/include/itkMacro.h Outdated
Comment thread Modules/Core/Common/include/itkMacro.h Outdated
Comment thread Modules/Core/Common/include/itkMacro.h Outdated
Copy link
Copy Markdown
Member

@dzenanz dzenanz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great progress!

Comment thread Modules/Core/Common/include/itkMacro.h Outdated
Comment thread Modules/Core/Common/include/itkMacro.h
Copy link
Copy Markdown
Member

@dzenanz dzenanz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fantastic. The only thing left is to get the green dashboard.

Please squash before merging.

@hjmjohnson hjmjohnson merged commit aec9519 into InsightSoftwareConsortium:master May 7, 2019
@dzenanz
Copy link
Copy Markdown
Member

dzenanz commented May 7, 2019

@maekclena do you have a discourse profile? Do you have any comments to add to discussion about compression?

@maekclena
Copy link
Copy Markdown
Contributor Author

No, I don't have an account. I'm not really knowledgeable on compression so I don't have anything to add to the discussion.

@maekclena maekclena deleted the macro_cleanup branch May 14, 2019 12:38
N-Dekker added a commit to N-Dekker/ITK that referenced this pull request Sep 26, 2021
`itkStaticConstMacro(name, type, value)` became unconditionally
identical to `static constexpr type name = value` with commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

`itkGetStaticConstMacro(name)` became unconditionally identical to
`(Self::name)` with commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most `itkStaticConstMacro` calls were removed by commit 5c14741
"STYLE: Replace itkStaticConstMacro with static constexpr",
Hans Johnson, 2 February 2018.

Most `itkGetStaticConstMacro` calls were removed by commit d72d28f
"STYLE: Do not use itkGetStaticConstMacro in ITK",
Hans Johnson, 4 March 2018.
N-Dekker added a commit to N-Dekker/ITK that referenced this pull request Sep 26, 2021
`itkStaticConstMacro(name, type, value)` became unconditionally
identical to `static constexpr type name = value` with commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

`itkGetStaticConstMacro(name)` became unconditionally identical to
`(Self::name)` with commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most `itkStaticConstMacro` calls were removed by commit 5c14741
"STYLE: Replace itkStaticConstMacro with static constexpr",
Hans Johnson, 2 February 2018.

Most `itkGetStaticConstMacro` calls were removed by commit d72d28f
"STYLE: Do not use itkGetStaticConstMacro in ITK",
Hans Johnson, 4 March 2018.
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 19, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 19, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 19, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 27, 2026
Make the MGHIO module a shared library like the
other IO modules.

ctest -R MGH
 1/14 Test InsightSoftwareConsortium#810: ITKIOMGHInDoxygenGroup ...........   Passed    0.05 sec
 2/14 Test InsightSoftwareConsortium#811: MGHFactoryCreationTest ...........   Passed    0.09 sec
 3/14 Test InsightSoftwareConsortium#812: MGHReadImagesTest_mgz ............   Passed    4.23 sec
 4/14 Test InsightSoftwareConsortium#813: MGHReadImagesTest_mgh ............   Passed    0.68 sec
 5/14 Test InsightSoftwareConsortium#814: MGHReadImagesTest_mgh.gz .........   Passed    4.11 sec
 6/14 Test InsightSoftwareConsortium#815: itkITKIOMGHInternalTests .........   Passed    0.08 sec
 7/14 Test InsightSoftwareConsortium#816: itkITKIOMGHOriginTest ............   Passed    4.16 sec
 8/14 Test InsightSoftwareConsortium#2356: MGHIOInDoxygenGroup ..............   Passed    0.04 sec
 9/14 Test InsightSoftwareConsortium#2357: MGHFactoryCreationTest ...........   Passed    0.07 sec
10/14 Test InsightSoftwareConsortium#2358: MGHReadImagesTest_mgz ............   Passed    4.23 sec
11/14 Test InsightSoftwareConsortium#2359: MGHReadImagesTest_mgh ............   Passed    0.68 sec
12/14 Test InsightSoftwareConsortium#2360: MGHReadImagesTest_mgh.gz .........   Passed    4.13 sec
13/14 Test InsightSoftwareConsortium#2361: itkMGHIOInternalTests ............   Passed    0.07 sec
14/14 Test InsightSoftwareConsortium#2362: itkMGHIOOriginTest ...............   Passed    4.13 sec
100% tests passed, 0 tests failed out of 14
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 27, 2026
Make the MGHIO module a shared library like the
other IO modules.

ctest -R MGH
 1/14 Test InsightSoftwareConsortium#810: ITKIOMGHInDoxygenGroup ...........   Passed    0.05 sec
 2/14 Test InsightSoftwareConsortium#811: MGHFactoryCreationTest ...........   Passed    0.09 sec
 3/14 Test InsightSoftwareConsortium#812: MGHReadImagesTest_mgz ............   Passed    4.23 sec
 4/14 Test InsightSoftwareConsortium#813: MGHReadImagesTest_mgh ............   Passed    0.68 sec
 5/14 Test InsightSoftwareConsortium#814: MGHReadImagesTest_mgh.gz .........   Passed    4.11 sec
 6/14 Test InsightSoftwareConsortium#815: itkITKIOMGHInternalTests .........   Passed    0.08 sec
 7/14 Test InsightSoftwareConsortium#816: itkITKIOMGHOriginTest ............   Passed    4.16 sec
 8/14 Test InsightSoftwareConsortium#2356: MGHIOInDoxygenGroup ..............   Passed    0.04 sec
 9/14 Test InsightSoftwareConsortium#2357: MGHFactoryCreationTest ...........   Passed    0.07 sec
10/14 Test InsightSoftwareConsortium#2358: MGHReadImagesTest_mgz ............   Passed    4.23 sec
11/14 Test InsightSoftwareConsortium#2359: MGHReadImagesTest_mgh ............   Passed    0.68 sec
12/14 Test InsightSoftwareConsortium#2360: MGHReadImagesTest_mgh.gz .........   Passed    4.13 sec
13/14 Test InsightSoftwareConsortium#2361: itkMGHIOInternalTests ............   Passed    0.07 sec
14/14 Test InsightSoftwareConsortium#2362: itkMGHIOOriginTest ...............   Passed    4.13 sec
100% tests passed, 0 tests failed out of 14
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 28, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 28, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request Apr 28, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson pushed a commit to hjmjohnson/ITK that referenced this pull request May 6, 2026
ENH: Update compiler macros
ENH: Address review and clean rest of code base
BUG: Fix compilation and tests
COMP: Fix errors and comments
hjmjohnson pushed a commit to hjmjohnson/ITK that referenced this pull request May 6, 2026
`itkStaticConstMacro(name, type, value)` became unconditionally
identical to `static constexpr type name = value` with commit
4b86926 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

`itkGetStaticConstMacro(name)` became unconditionally identical to
`(Self::name)` with commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most `itkStaticConstMacro` calls were removed by commit 70e34ee
"STYLE: Replace itkStaticConstMacro with static constexpr",
Hans Johnson, 2 February 2018.

Most `itkGetStaticConstMacro` calls were removed by commit b45e731
"STYLE: Do not use itkGetStaticConstMacro in ITK",
Hans Johnson, 4 March 2018.
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 6, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
4b86926 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 70e34ee
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 6, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
4b86926 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 70e34ee
hjmjohnson added a commit that referenced this pull request May 9, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson pushed a commit to hjmjohnson/ITK that referenced this pull request May 12, 2026
ENH: Update compiler macros
ENH: Address review and clean rest of code base
BUG: Fix compilation and tests
COMP: Fix errors and comments
hjmjohnson pushed a commit to hjmjohnson/ITK that referenced this pull request May 12, 2026
`itkStaticConstMacro(name, type, value)` became unconditionally
identical to `static constexpr type name = value` with commit
4c862f4 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

`itkGetStaticConstMacro(name)` became unconditionally identical to
`(Self::name)` with commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most `itkStaticConstMacro` calls were removed by commit 4677069
"STYLE: Replace itkStaticConstMacro with static constexpr",
Hans Johnson, 2 February 2018.

Most `itkGetStaticConstMacro` calls were removed by commit 697a1db
"STYLE: Do not use itkGetStaticConstMacro in ITK",
Hans Johnson, 4 March 2018.
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 12, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
4c862f4 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 4677069
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 14, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 14, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 14, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 14, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
hjmjohnson added a commit to hjmjohnson/ITK that referenced this pull request May 17, 2026
Use static constexpr directly now that C++11 conformance
is required by all compilers.

:%s/itkStaticConstMacro *( *\([^,]*\),[ \_s]*\([^,]*\),\_s*\([^)]*\)) */static constexpr \2 \1 = \3/ge

'itkStaticConstMacro(name, type, value)' became unconditionally
identical to 'static constexpr type name = value' with ITK commit
aec9519 "ENH: Update compiler macros (InsightSoftwareConsortium#810)",
maekclena, 7 May 2019.

'itkGetStaticConstMacro(name)' became unconditionally identical to
'(Self::name)' with ITK commit 84e490b
"Removing some outdated compiler conditionals", Hans Johnson, 31 July
2010.

Most 'itkStaticConstMacro' calls were removed by ITK commit 5c14741
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants