Ticket #1414 (closed bug: fixed)

Opened 6 years ago

Last modified 2 years ago

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 Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

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

Changed 6 years ago by igloo

  • milestone set to 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.

Changed 5 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 | ...

Changed 5 years ago by simonmar

  • architecture changed from Unknown to Unknown/Multiple

Changed 5 years ago by simonmar

  • os changed from Unknown to Unknown/Multiple

Changed 4 years ago by igloo

  • milestone changed from 6.10 branch to 6.12 branch

Changed 3 years ago by igloo

  • milestone changed from 6.12 branch to 6.12.3

Changed 3 years ago by igloo

  • priority changed from normal to low
  • milestone changed from 6.12.3 to 6.14.1

Changed 2 years ago by igloo

  • milestone changed from 7.0.1 to 7.0.2

Changed 2 years ago by igloo

  • milestone changed from 7.0.2 to 7.2.1

Changed 2 years ago by batterseapower

  • status changed from new to closed
  • failure set to None/Unknown
  • resolution set to fixed

Fixed by 509f28cc93b980d30aca37008cbe66c677a0d6f6 to base.

Note: See TracTickets for help on using tickets.