From cac640251b2c0e9f426bbb018a1f823e01f15c2d Mon Sep 17 00:00:00 2001
From: scott snyder <snyder@bnl.gov>
Date: Fri, 23 Sep 2022 16:05:50 +0200
Subject: [PATCH] L1CaloFEXByteStream: Fix compilation with clang.

Classes with virtual bases can't have nonstatic constexpr members.
---
 .../L1CaloFEXByteStream/src/jFexInputByteStreamTool.cxx         | 2 +-
 .../L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.cxx b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.cxx
index 2ef38fcc5174..ecd6813f4e5d 100644
--- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.cxx
+++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.cxx
@@ -370,7 +370,7 @@ StatusCode jFexInputByteStreamTool::ReadfromFile(const std::string & fileName){
 }
 
 
-constexpr unsigned int jFexInputByteStreamTool::mapIndex(unsigned int jfex, unsigned int fpga, unsigned int channel, unsigned int tower) const{
+constexpr unsigned int jFexInputByteStreamTool::mapIndex(unsigned int jfex, unsigned int fpga, unsigned int channel, unsigned int tower) {
   // values from hardware: jfex=[0,5] 4 bits, fpga=[0,3] 4 bits, channel=[0,59] 8 bits, tower=[0,15] 4 bits
   return (jfex << 16) | (fpga << 12) | (channel << 4) | tower;
 }
diff --git a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.h b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.h
index b7005f8cecf5..17aaa3db1ac1 100644
--- a/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.h
+++ b/Trigger/TrigT1/L1CaloFEX/L1CaloFEXByteStream/src/jFexInputByteStreamTool.h
@@ -71,7 +71,7 @@ class jFexInputByteStreamTool : public extends<AthAlgTool, IL1TriggerByteStreamT
         StatusCode ReadfromFile(const std::string&);
         
         // hash the index into one integer in the format 0xJFCCT (hexadecimal)
-        constexpr unsigned int mapIndex(unsigned int jfex, unsigned int fpga, unsigned int channel, unsigned int tower) const;
+        constexpr static unsigned int mapIndex(unsigned int jfex, unsigned int fpga, unsigned int channel, unsigned int tower);
         std::unordered_map<unsigned int, std::array<float,4> > m_Firm2Tower_map; /// {map index, {IDsimulation,eta,phi}}
         
         
-- 
GitLab