diff --git a/core/src/cluster.hh b/core/src/cluster.hh
index 37f5b536673a4f7fc32c3c18f370aeacc9dfabd3..e2a0415966a604e9bb66e753cc62cabb9c5b0337 100644
--- a/core/src/cluster.hh
+++ b/core/src/cluster.hh
@@ -7,9 +7,11 @@
 
 namespace promod3 { namespace core {
 
-typedef enum{AVG_DIST_METRIC,
-             MAX_DIST_METRIC,
-             MIN_DIST_METRIC} DistanceMetric;
+enum DistanceMetric {
+  AVG_DIST_METRIC,
+  MAX_DIST_METRIC,
+  MIN_DIST_METRIC
+};
   
 struct Cluster{
 
diff --git a/core/tests/test_portable_binary.cc b/core/tests/test_portable_binary.cc
index 9bac9e03d9e2bcf1bad0864dc65f43091142d646..31102f39f1c5401ed2d9fc3c6b65dd2b0b93ed9c 100644
--- a/core/tests/test_portable_binary.cc
+++ b/core/tests/test_portable_binary.cc
@@ -11,7 +11,7 @@ BOOST_AUTO_TEST_SUITE( core );
 
 using namespace promod3::core;
 
-typedef enum  {
+enum MyEnum {
   ARG, ASN, ASP, 
   GLN, GLU, LYS, 
   SER, CYS, CYH, 
@@ -21,7 +21,7 @@ typedef enum  {
   CPR, TPR, HSD, 
   HSE, HIS, PHE, 
   GLY, ALA, XXX
-} MyEnum;
+};
 
 struct MyStruct {
   // types used in binaries (as of Jan 21, 2016)
diff --git a/loop/src/backbone_loop_score.hh b/loop/src/backbone_loop_score.hh
index c95ac70bdafb262fd09895f96f65e6b9d178ff2a..0faa991f21623ea127ed0f9317f7ffd022a2207d 100644
--- a/loop/src/backbone_loop_score.hh
+++ b/loop/src/backbone_loop_score.hh
@@ -24,7 +24,7 @@ namespace promod3 { namespace loop {
 class BackboneLoopScorer;
 typedef boost::shared_ptr<BackboneLoopScorer> BackboneLoopScorerPtr;
 
-enum ClashType{
+enum ClashType {
   CLASH_C,
   CLASH_N,
   CLASH_O
diff --git a/loop/src/fragger.hh b/loop/src/fragger.hh
index d935bf1af39e00e99ae6a6f7fed82e93b03d9cc3..30938b0b2ff1c5ca50e118597c5557c4713887ff 100644
--- a/loop/src/fragger.hh
+++ b/loop/src/fragger.hh
@@ -23,14 +23,14 @@ typedef boost::shared_ptr<Fragger> FraggerPtr;
 typedef boost::shared_ptr<FraggerMap> FraggerMapPtr;
 typedef std::vector<FraggerPtr> FraggerList;
 
-typedef enum{
+enum FraggerScoreType {
   SeqSim,
   SeqID,
   SSAgree,
   TorsionProb,
   SequenceProfile,
   StructureProfile
-} FraggerScoreType;
+};
 
 // portable serialization (with fixed-width base-types)
 inline void Serialize(ost::io::BinaryDataSource& ds, FraggerScoreType& st) {
diff --git a/scoring/src/backbone_score_base.hh b/scoring/src/backbone_score_base.hh
index e9b0154e04cf26801b7055ef6c76162b6b696880..83eb748397cb669e30d29fb90f0f71e27482a472 100644
--- a/scoring/src/backbone_score_base.hh
+++ b/scoring/src/backbone_score_base.hh
@@ -55,27 +55,27 @@ private:
 };
 
 
-typedef enum{
+enum PairwiseFunctionType {
   CA_PAIRWISE_FUNCTION,
   CB_PAIRWISE_FUNCTION
-} PairwiseFunctionType;
+};
 
 
-struct PairwiseFunctionData{
+struct PairwiseFunctionData {
   PairwiseFunctionPtr f;
   PairwiseFunctionType ft;
   uint other_idx;
 };
 
 
-struct DensityMapData{
+struct DensityMapData {
   ost::img::MapHandle map;
   Real resolution;
   bool all_atom;
 };
 
 
-class BackboneScoreEnv{
+class BackboneScoreEnv {
 
 public:
 
diff --git a/sidechain/src/particle.hh b/sidechain/src/particle.hh
index 155c21bfde5662b7e618a8d7b94a73580d6d7818..61672fce60f9f0b78e0c1fbfdaa2f98bb1d811d0 100644
--- a/sidechain/src/particle.hh
+++ b/sidechain/src/particle.hh
@@ -4600,12 +4600,17 @@ namespace{
 
 namespace promod3{ namespace sidechain{
 
-typedef enum{
-  HParticle, CParticle,
-  CH1Particle, CH2Particle,
-  CH3Particle, NParticle,
-  OParticle, OCParticle,
-  SParticle} SidechainParticle;
+enum SidechainParticle {
+  HParticle,
+  CParticle,
+  CH1Particle,
+  CH2Particle,
+  CH3Particle,
+  NParticle,
+  OParticle,
+  OCParticle,
+  SParticle
+};
 
 class Particle;
 typedef boost::shared_ptr<Particle> ParticlePtr;
diff --git a/sidechain/src/rotamer_id.hh b/sidechain/src/rotamer_id.hh
index 1a94467a10d715d3b51df2a35d2f2e91924c0068..56945004aee9ce15524657bb9f302db8646b5173 100644
--- a/sidechain/src/rotamer_id.hh
+++ b/sidechain/src/rotamer_id.hh
@@ -7,7 +7,7 @@
 
 namespace promod3{ namespace sidechain{
 
-typedef enum  {
+enum RotamerID {
   ARG, ASN, ASP, 
   GLN, GLU, LYS, 
   SER, CYS, CYH, 
@@ -17,7 +17,7 @@ typedef enum  {
   CPR, TPR, HSD, 
   HSE, HIS, PHE, 
   GLY, ALA, XXX
-} RotamerID;
+};
 
 // portable serialization (with fixed-width base-types)
 inline void Serialize(core::PortableBinaryDataSink& ds, RotamerID t) {