And here is the output of the previous message SQL with sqlite compiled with my changes and SQLITE_PEDANTIC defined: ===== sqlite3 < "text-expr.sql" -- literal expression, integer values types rounded to floor 5592761191971 5744488517721 -- literal expression, integer values types rounded to ceil 9078588368871 9329444099871 -- literal expression, mixed values types FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- json array expression, mixed values types FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- json object expression, mixed values types FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- json object expression, text/mixed values types FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- text type declaration, mixed values Affinity applied on make record 1 : 3 : B Affinity applied on make record 2 : 3 : B Affinity applied on make record 3 : 3 : B Affinity applied on make record 4 : 3 : B Affinity applied on make record 5 : 3 : B Affinity applied on make record 6 : 3 : B Affinity applied on make record 7 : 3 : B Affinity applied on make record 8 : 3 : B Affinity applied on make record 9 : 3 : B Affinity applied on make record 10 : 3 : B Affinity applied on make record 11 : 3 : B Affinity applied on make record 12 : 3 : B Affinity applied on make record 13 : 3 : B Affinity applied on make record 14 : 3 : B Affinity applied on make record 15 : 3 : B Affinity applied on make record 16 : 3 : B Affinity applied on make record 17 : 3 : B Affinity applied on make record 18 : 3 : B Affinity applied on make record 19 : 3 : B Affinity applied on make record 20 : 3 : B FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- text type declaration, text/mixed values FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- blob type declaration, mixed values FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- integer type declaration, mixed values Affinity applied on make record 2 : 2 : D Affinity applied on make record 4 : 2 : D Affinity applied on make record 6 : 2 : D Affinity applied on make record 16 : 2 : D Affinity applied on make record 17 : 2 : D Affinity applied on make record 18 : 2 : D FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- integer/real type declaration, integer/real values FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- integer type declaration, real values Affinity applied on make record 1 : 2 : D Affinity applied on make record 2 : 2 : D Affinity applied on make record 3 : 2 : D Affinity applied on make record 4 : 2 : D Affinity applied on make record 5 : 2 : D Affinity applied on make record 6 : 2 : D Affinity applied on make record 7 : 2 : D Affinity applied on make record 8 : 2 : D Affinity applied on make record 9 : 2 : D Affinity applied on make record 10 : 2 : D Affinity applied on make record 11 : 2 : D Affinity applied on make record 12 : 2 : D Affinity applied on make record 13 : 2 : D Affinity applied on make record 14 : 2 : D Affinity applied on make record 15 : 2 : D Affinity applied on make record 16 : 2 : D Affinity applied on make record 17 : 2 : D Affinity applied on make record 18 : 2 : D Affinity applied on make record 19 : 2 : D Affinity applied on make record 20 : 2 : D FP Remainder received non integer values 3.000000 :: 167.864400 8290383058308.3 8516465628803.37 -- literal expression, real values types 8035491468053.99 8260995146768.14 -- real type declaration, mixed values 8035491468053.99 8260995146768.14 -- real type declaration, real values 8035491468053.99 8260995146768.14 -- blob type declaration, real values 8035491468053.99 8260995146768.14 -- text type declaration, text/real values 8035491468053.99 8260995146768.14 -- json array expression, real values types 8035491468053.99 8260995146768.14 -- json object expression, real values types 8035491468053.99 8260995146768.14 -- json object expression, text/real values types 8035491468053.99 8260995146768.14 ====