my code is structured like this , in summary:


-- this function will return th N°BD from Sidonie for a given name
-- note: names have been standardized between Sidonie and WDS
getAlphaDelta :: Connection -> String -> IO (Double,Double)
getAlphaDelta conn name = do
            let qry_head_AlphaDelta_AngularDistance = "select alpha,delta from AngularDistance where Nom = ?" :: Query
            (alpha_delta_rows :: [(Double,Double)]) <- query conn qry_head_AlphaDelta_AngularDistance (Only (name::String))
--            putStrLn $ show alpha_delta_rows
            return (head alpha_delta_rows)


main =

  do
    conn <- connect defaultConnectInfo
      { connectHost = "moita",
        connectUser = "mattei",
        connectPassword = "sidonie2",
        connectDatabase = "sidonie" }


-- check getAlphaDelta works:
 
    let name3 = "A     7"
    putStrLn $ show name3
    ad3 <- getAlphaDelta conn name3
    putStr "ad3 ="
    putStrLn $ show ad3

this works i got result such as:
"A     7"
ad3 =(11297.0,-619.0)


if i move the 5 lines of code at the end of file it segfault

between the begin and end i have some DB connection and  queriung , filtering, mapping...


any idea?

should i really upgrade the version of GHCI?

Damien