Opened 13 years ago

Closed 9 years ago

#1414 closed bug (fixed)

CString marshalling functions do not perform the specified conversion

Reported by: ross Owned by:
Priority: low Milestone: 7.2.1
Component: libraries/base Version: 6.6.1
Keywords: Cc: pho@…
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:

Description

The CString and CStringLen marshalling functions are specified in the FFI addendum as performing a locale-based conversion, but this is not implemented.

Change History (10)

comment:1 Changed 13 years ago by igloo

Milestone: 6.1

We should do something about character sets in GHC at some point, but I don't think there's time in the 6.8 timeframe.

comment:2 Changed 12 years ago by PHO

Cc: pho@… added

Locale-based conversion will cause too much confusion, because C functions may take/return UTF-8 strings while your locale is something like ja_JP.eucJP. I strongly prefer to make withCString obsolete and introduce "withCString' :: Encoding -> String -> (CString -> IO a) -> IO a" (or such like) where data Encoding = UTF_8 | UTF_16 | ISO_8859_1 | ...

comment:3 Changed 11 years ago by simonmar

Architecture: UnknownUnknown/Multiple

comment:4 Changed 11 years ago by simonmar

Operating System: UnknownUnknown/Multiple

comment:5 Changed 11 years ago by igloo

Milestone: 6.10 branch6.12 branch

comment:6 Changed 10 years ago by igloo

Milestone: 6.12 branch6.12.3

comment:7 Changed 10 years ago by igloo

Milestone: 6.12.36.14.1
Priority: normallow

comment:8 Changed 9 years ago by igloo

Milestone: 7.0.17.0.2

comment:9 Changed 9 years ago by igloo

Milestone: 7.0.27.2.1

comment:10 Changed 9 years ago by batterseapower

Resolution: fixed
Status: newclosed
Type of failure: None/Unknown
Note: See TracTickets for help on using tickets.