@@ -174,7 +174,8 @@ extension Double: Expressible {
174174extension  Int :  Expressible  { 
175175
176176    public  var  expression :  Expression < ( ) >  { 
177-         return  Expression ( value:  self ) 
177+         // FIXME: rdar://TODO segfaults during archive // return Expression(value: self)
178+         return  Expression ( binding:  datatypeValue) 
178179    } 
179180
180181} 
@@ -927,26 +928,22 @@ public func ^= <V: Value where V.Datatype == Int64>(column: Expression<V?>, valu
927928public  func  ^=  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V > ,  value:  V )  ->  Setter  {  return  set ( column,  column ^ value)  } 
928929public  func  ^=  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V ? > ,  value:  V )  ->  Setter  {  return  set ( column,  column ^ value)  } 
929930
930- public  postfix  func  ++  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V > )  ->  Setter  {  return  Expression < Int > ( column)  +=  1  } 
931- public  postfix  func  ++  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V ? > )  ->  Setter  {  return  Expression < Int > ( column)  +=  1  } 
932- public  postfix  func  --  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V > )  ->  Setter  {  return  Expression < Int > ( column)  -=  1  } 
933- public  postfix  func  --  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V ? > )  ->  Setter  {  return  Expression < Int > ( column)  -=  1  } 
934- //public postfix func ++ (column: Expression<Int>) -> Setter {
935- //    // rdar://18825175 segfaults during archive: // column += 1
936- //    return (column, Expression<Int>(literal: "(\(column.SQL) + 1)", column.bindings))
937- //}
938- //public postfix func ++ (column: Expression<Int?>) -> Setter {
939- //    // rdar://18825175 segfaults during archive: // column += 1
940- //    return (column, Expression<Int>(literal: "(\(column.SQL) + 1)", column.bindings))
941- //}
942- //public postfix func -- (column: Expression<Int>) -> Setter {
943- //    // rdar://18825175 segfaults during archive: // column -= 1
944- //    return (column, Expression<Int>(literal: "(\(column.SQL) - 1)", column.bindings))
945- //}
946- //public postfix func -- (column: Expression<Int?>) -> Setter {
947- //    // rdar://18825175 segfaults during archive: // column -= 1
948- //    return (column, Expression<Int>(literal: "(\(column.SQL) - 1)", column.bindings))
949- //}
931+ public  postfix  func  ++  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V > )  ->  Setter  { 
932+     // rdar://18825175 segfaults during archive: // column += 1
933+     return  ( column,  Expression < V > ( literal:  " ( \( column. SQL)  + 1) " ,  column. bindings) ) 
934+ } 
935+ public  postfix  func  ++  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V ? > )  ->  Setter  { 
936+     // rdar://18825175 segfaults during archive: // column += 1
937+     return  ( column,  Expression < V > ( literal:  " ( \( column. SQL)  + 1) " ,  column. bindings) ) 
938+ } 
939+ public  postfix  func  --  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V > )  ->  Setter  { 
940+     // rdar://18825175 segfaults during archive: // column -= 1
941+     return  ( column,  Expression < V > ( literal:  " ( \( column. SQL)  - 1) " ,  column. bindings) ) 
942+ } 
943+ public  postfix  func  --  < V:  Value  where  V. Datatype ==  Int64 > ( column:  Expression < V ? > )  ->  Setter  { 
944+     // rdar://18825175 segfaults during archive: // column -= 1
945+     return  ( column,  Expression < V > ( literal:  " ( \( column. SQL)  - 1) " ,  column. bindings) ) 
946+ } 
950947
951948// MARK: - Internal
952949
0 commit comments