Implementation of the 2.0 session state model
[mono.git] / mcs / class / corlib / System.Runtime.InteropServices / ChangeLog
1 2006-12-15  Gert Driesen  <drieseng@users.sourceforge.net>
2
3         * Marshal.cs: Use SystemDefaultCharSize to determine whether to
4         use Ansi or Unicode variant of StringToCoTaskMem.
5
6 2006-12-15  Miguel de Icaza  <miguel@novell.com>
7
8         * Marshal.cs (SecureStringToCoTaskMemAnsi, SecureStringToBSTR,
9         SecureStringToCoTaskMemUnicode, ZeroFreeCoTaskMemAnsi,
10         ZeroFreeCoTaskMemUnicode, ZeroFreeGlobalAllocAnsi,
11         ZeroFreeGlobalAllocUnicode): Implement.
12
13         (StringToCoTaskAuto): return the same as Ansi.  
14
15         The ANSI code is out of sync with Mono, which treats ANSI as
16         UTF-8. 
17
18         Code formatting changes
19
20 2006-12-11  Miguel de Icaza  <miguel@novell.com>
21
22         * SafeHandle.cs: Fix a handful of bugs, and add tests for them.
23         Only release the handle if its owned by us.  Also throw
24         ObjectDisposedException's
25
26         Implement finalizer.
27
28         DangerousAddRef will now throw an exception if the object was
29         disposed.
30
31 2006-12-02  Miguel de Icaza  <miguel@novell.com>
32
33         * SafeHandle.cs: Implement this class.
34         
35 2006-10-06  Jonathan Chambers  <joncham@gmail.com>
36
37         * ExtensibleClassFactory.cs: Implement RegisterObjectCreationCallback.
38         
39 2006-08-31 Robert Jordan  <robertj@gmx.net>
40
41         * Marshal.cs: Replaced the *Auto internal calls with managed
42         variants. Fixed SystemDefaultCharSize to return an OS dependent
43         value.
44
45 2006-08-09  Jonathan Chambers  <joncham@gmail.com>
46
47         * Marshal.cs: Implement GetIDispatchForObject.
48         
49 2006-08-07  Gert Driesen  <drieseng@users.sourceforge.net>
50
51         * Marshal.cs: Added stubs for GetTypeLibGuid (ITypeLib), GetTypeLibLcid
52         (ITypeLib), GetTypeLibName (ITypeLib).
53
54 2006-07-28  Jonathan Chambers  <joncham@gmail.com>
55
56         * Marshal.cs: Implemented CreateWrapperOfType and ReleaseComObject.
57         
58 2006-07-15  Jonathan Chambers  <joncham@gmail.com>
59
60         * Marshal.cs: Begin implementing COM Interop. Implemented
61         AddRef, GetComInterfaceForObject, GetComObjectData, GetIUnknownForObject,
62         GetObjectForIUnknown, GetTypedObjectForIUnknown, IsComObject, QueryInterface
63         Release, SetComObjectData, and ThrowExceptionForHR.
64         
65 2006-06-07  Jonathan Chambers  <jonathan.chambers@ansys.com>
66
67         * Marshal.cs: Implement GetComSlotForMethodInfo
68
69 2006-06-05  Jonathan Chambers  <jonathan.chambers@ansys.com>
70
71         * Marshal.cs: Implement VARIANT marshalling methods
72
73 2006-05-20  Zac Bowling <zac@zacbowling.com>
74         * VarEnum.cs: ComVisible Attribute (2.0)
75         * InterfaceTypeAttribute.cs: ComVisible Attribute (2.0)
76         * UCOMITypeInfo.cs: ComImport Attribute (1.x)
77         * UCOMITypeComp.cs: ComImport Attribute (1.x)
78         * MarshalAsAttribute.cs: ComVisible Attribute (2.0)
79         * StructLayoutAttribute.cs: ComVisible Attribute (2.0)
80         * ProgIdAttribute.cs: ComVisible Attribute (2.0)
81         * PrimaryInteropAssemblyAttribute.cs: ComVisible Attribute (2.0)
82         * ImporterEventKind.cs: ComVisible Attribute (2.0)
83         * UCOMIPersistFile.cs: ComImport Attribute (1.x)
84         * SetWin32ContextInIDispatchAttribute.cs: Obselete and ComVisible
85         Attribute (2.0)
86         * IRegistrationServices.cs: ComVisible Attribute and CAS Attributes (2.0)
87         * InAttribute.cs: ComVisible Attribute (2.0)
88         * UCOMIMoniker.cs: ComImport Attribute (1.x)
89         * MarshalDirectiveException.cs: ComVisible Attribute (2.0)
90         * IDLDESC.cs: ComVisible Attribute (1.x)
91         * FUNCFLAGS.cs: ComVisible Attribute (1.x)
92         * UCOMIConnectionPointContainer.cs: ComImport Attribute (1.x)
93         * TypeLibExporterFlags.cs: ComVisible Attribute (2.0)
94         * ICustomMarshaler.cs: ComVisible Attribute (2.0)
95         * LayoutKind.cs: ComVisible Attribute (2.0) + Serializable + Clean
96         * ICustomAdapter.cs: ComVisible Attribute (2.0)
97         * UnmanagedFunctionPointerAttribute.cs: ComVisible Attribute and Param
98         Signature of UnmanagedFunctionPointerAttribute(...)
99         * FUNCKIND.cs: ComVisble Attribute (1.x)
100         * TypeLibVersionAttribute.cs: ComVisible Attribute (2.0) + Missing in
101         2.0
102         * TypeLibVarAttribute.cs: ComVisible Attribute (2.0)
103         * ITypeLibConverter.cs: ComVisible Attribute (2.0)
104         * UCOMIRunningObjectTable.cs: ComImport Attribute (1.x)
105         * IDispatchImplAttribute.cs: Obsolete + ComVisible Attribute (2.0)
106         * ITypeLibImporterNotifySink.cs: ComVisible Attribute (2.0)
107         * PreserveSigAttribute.cs: ComVisible Attribute (2.0)
108         * SYSKIND.cs: ComVisible Attribute (1.x) 
109         * UCOMIEnumVARIANT.cs: ComImport Attribute (1.x)
110         * UCOMIEnumString.cs: ComImport Attribute (1.x) and Expose to 1.x (not
111         a 2.0 exclusive class)
112         * OutAttribute.cs: ComVisible Attribute (2.0)
113         * InvalidComObjectException.cs: ComVisible Attribute (2.0)
114         * SEHException.cs: ComVisible Attribute (2.0)
115         * UCOMIConnectionPoint.cs: ComImport Attribute (1.x)
116         * TypeLibImporterFlags.cs: ComVisible Attribute (2.0) and
117         Serializable
118         * OptionalAttribute.cs: ComVisible Attribute (2.0)
119         * TYPEDESC.cs: ComVisible Attribute (1.x)
120         * UCOMIEnumMoniker.cs: ComImport Attribute (1.x) and Expose to 1.x
121         (not a 2.0 exclusive class)
122         * TypeLibTypeFlags.cs: ComVisible Attribute (2.0)
123         * ITypeLibExporterNotifySink.cs: ComVisible Attribute (2.0)
124         * HandleRef.cs: ComVisible.cs and add ToIntPtr (2.0)
125         * DllImportAttribute.cs: ComVisible Attribute (2.0)
126         * TypeLibTypeAttribute.cs: ComVisible Attribute (2.0)
127         * UnknownWrapper.cs: Serializable, ComVisible Attribute (2.0)
128         * IDFLAGS.cs: ComVisible Attribute (1.x only)
129         * RegistrationClassContext.cs: License + Flags attribute (2.0)
130         * GCHandle.cs: ComVisible Attribute + Operator Overrides (2.0)
131         * TypeLibImportClassAttribute.cs: ComVisible Attribute (2.0)
132         * IMPLYTPEFLAGS.cs: ComVisible Attribute (1.x)
133         * ImportedFromTypeLibAttribute.cs: ComVisible (2.0)
134         * UCOMIBindCtx.cs: Obsolete Attribute (2.0)
135         * FUNCDESC.cs: ComVisible Attribute (1.x)
136         * RegistrationConnectionType.cs: Flags Attribute (2.0)
137         * IDispatchImplType.cs: Obsolete + ComVisible Attribute (2.0)
138         * TypeLibConverter.cs: ComVisible (2.0)
139         * INVOKEKIND.cs: ComVisible Attribute (1.x)
140         * GCHandleType.cs: ComVisible Attribute (2.0) + Serializable
141         * ICustomFactory.cs: ComVisible Attribute (2.0)
142         * FieldOffsetAttribute.cs: ComVisible Attribute (2.0)
143         * LIBFLAGS.cs: ComVisible Attribute (1.x)
144         * ComSourceInterfacesAttributes.cs: ComVisible Attribute (2.0)
145         * STATSTG.cs: ComVisible Attribute (1.x)
146         * InvalidOleVariantTypeException.cs: ComVisible Attribute (2.0)
147         * TypeLibVarFlags.cs: ComVisible Attribute (2.0)
148         * TYPEFLAGS.cs: ComVisible Attribute (1.x)
149         * SafeArrayRankMismatchException.cs: ComVisible Attribute (2.0)
150         * TYPEATTR.cs: ComVisible Attribute (1.x)
151         * GuidAttribute.cs: ComVisible Attribute (2.0)
152         * UCOMIEnumConnectionPoints.cs: ComImport Attribute (1.x) + Expose to
153         1.x (not a 2.0 exclusive)
154         * SafeArrayTypeMismatchException.cs: ComVisible Attribute (2.0)
155         * ObjectCreationDelegate.cs: ComVisible Attribute (2.0)
156         * ITypeLibExporterNameProvider.cs: ComVisible Attribute (2.0) and
157         MarshelAs VarEnum Type.
158         * UCOMIStream.cs: ComImport Attribute (1.x)
159         * TypeLibFuncFlags.cs ComVisible Attribute (2.0)
160         * UnmanagedType.cs: ComVisible Attribute (2.0) + clean up
161         * UCOMIEnumConnections.cs: ComImport Attribute (1.0)
162         * LCIDConversionAttribute.cs: ComVisible Attribute (2.0)
163         * TypeLibFuncAttribute.cs: ComVisible Attribute (2.0)
164
165 2006-05-02  Jonathan Chambers  <jonathan.chambers@ansys.com>
166
167         * Marshal.cs: Implement BSTR methods
168
169 2006-01-12  Ben Maurer  <bmaurer@andrew.cmu.edu>
170
171         * SafeHandle.cs: Update to RTM api
172
173 2005-11-17  Zoltan Varga  <vargaz@gmail.com>
174
175         * DefaultParameterValueAttribute.cs: New file.
176
177 2005-10-28  Sebastien Pouliot  <sebastien@ximian.com>
178
179         * Marshal.cs: Added null check in SecureStringTo* methods and make 
180         them throw a NotSupportedException otherwise (as existing code must
181         deal with this anyway). Fixed Uni -> Unicode method name changes.
182
183 2005-09-25  Sebastien Pouliot  <sebastien@ximian.com>
184
185         * UCOMIBindCtx.cs, UCOMIConnectionPoint.cs, 
186         UCOMIConnectionPointContainer.cs, UCOMIEnumConnectionPoints.cs,
187         UCOMIEnumConnections.cs, UCOMIEnumMoniker.cs, UCOMIEnumString.cs,
188         UCOMIEnumVARIANT.cs, UCOMIMoniker.cs, UCOMIPersistFile.cs, 
189         UCOMIRunningObjectTable.cs, UCOMIStream.cs, UCOMITypeComp.cs,
190         UCOMITypeInfo.cs, UCOMITypeLib.cs: Remove [ComImport] from the default
191         profile (this is new in 2.0) and reduce corcompare extras by 15.
192
193 2005-09-21  Kornél Pál  <kornelpal@hotmail.com>
194
195         * UCOMIEnumConnections.cs, UCOMIEnumMoniker.cs, UCOMIEnumString.cs,
196           UCOMIStream.cs, UCOMITypeInfo.cs, UCOMITypeLib.cs, UnmanagedType.cs:
197           Removed UnmanagedType_80 that was required because mcs bug #75945
198           was not discovered.
199
200 2005-08-12  Gert Driesen  <drieseng@users.sourceforge.net>
201
202         * SetWin32ContextInIDispatchAttribute.cs: Make this attribute also
203         available in 1.0 profile (.NET 1.1).
204         * VariantWrapper.cs: Class is also exposed in .NET 1.1. Only 
205         serializable in 2.0 profile.
206
207 2005-08-10  Zoltan Varga  <vargaz@freemail.hu>
208
209         * SafeHandle.cs: New file.
210
211 2005-08-06  Gert Driesen  <drieseng@users.sourceforge.net>
212
213         * _Activator.cs: ComVisible should only be set in 2.0 profile.
214         Added TypeLibImportClass attribute.
215         * _Assembly.cs: ComVisible should only be set in 2.0 profile. Added
216         TypeLibImportClass attribute. Fixes InterfaceType to match MS.NET.
217         * _AssemblyBuilder.cs: ComVisible should only be set in 2.0 profile.
218         Added TypeLibImportClass attribute.
219         * _AssemblyName.cs: ComVisible should only be set in 2.0 profile.
220         Added TypeLibImportClass attribute.
221         * _Attribute.cs: ComVisible should only be set in 2.0 profile.
222         Added TypeLibImportClass attribute.
223         * _ConstructorBuilder.cs: ComVisible should only be set in 2.0 profile.
224         Added TypeLibImportClass attribute.
225         * _ConstructorInfo.cs: Fixed InterfaceType to match MS.NET. Added
226         TypeLibImportClass attribute. Added missing methods.
227         * _CustomAttributeBuilder.cs: ComVisible should only be set in 2.0 profile.
228         Added TypeLibImportClass attribute.
229         * _EnumBuilder.cs: ComVisible should only be set in 2.0 profile.
230         Added TypeLibImportClass attribute.
231         * _EventBuilder.cs: ComVisible should only be set in 2.0 profile.
232         Added TypeLibImportClass attribute.
233         * _EventInfo.cs: Fixed InterfaceType to match MS.NET. Added
234         TypeLibImportClass attribute. Added missing methods.
235         * _FieldBuilder.cs: ComVisible should only be set in 2.0 profile.
236         Added TypeLibImportClass attribute.
237         * _FieldInfo.cs: Fixed InterfaceType to match MS.NET. Added
238         TypeLibImportClass attribute. Added missing methods.
239         * _ILGenerator.cs: ComVisible should only be set in 2.0 profile.
240         Added TypeLibImportClass attribute.
241         * _LocalBuilder.cs: ComVisible should only be set in 2.0 profile.
242         Added TypeLibImportClass attribute.
243         * _MemberInfo.cs: Fixed InterfaceType to match MS.NET. Added
244         TypeLibImportClass attribute. Added missing methods. 
245         * _MethodBase.cs: Fixed InterfaceType to match MS.NET. Added
246         TypeLibImportClass attribute. Added missing methods.
247         * _MethodInfo.cs: Fixed InterfaceType to match MS.NET. Added
248         TypeLibImportClass attribute. Added missing methods.
249         * _MethodBuilder.cs: ComVisible should only be set in 2.0 profile.
250         Added TypeLibImportClass attribute.
251         * _MethodRental.cs: ComVisible should only be set in 2.0 profile.
252         Added TypeLibImportClass attribute.
253         * _Module.cs: ComVisible should only be set in 2.0 profile.
254         Added TypeLibImportClass attribute.
255         * _ModuleBuilder.cs: ComVisible should only be set in 2.0 profile.
256         Added TypeLibImportClass attribute.
257         * _ParameterBuilder.cs: ComVisible should only be set in 2.0 profile.
258         Added TypeLibImportClass attribute.
259         * _ParameterInfo.cs: ComVisible should only be set in 2.0 profile.
260         Added TypeLibImportClass attribute.
261         * _PropertyBuilder.cs: ComVisible should only be setin 2.0 profile.
262         Added TypeLibImportClass attribute.
263         * _PropertyInfo.cs: Fixed InterfaceType to match MS.NET. Added
264         TypeLibImportClass attribute. Added missing methods.
265         * _SignatureHelper.cs: ComVisible should only be set in 2.0 profile.
266         Added TypeLibImportClass attribute.
267         * _Type.cs: Added TypeLibImportClass attribute. Fixed InterfaceType 
268         to match MS.NET. Added missing method to match MS.NET.
269         * _Thread.cs: ComVisible should only be set in 2.0 profile.
270         Added TypeLibImportClass attribute.
271         * _TypeBuilder:cs: ComVisible should only be set in 2.0 profile.
272         Added TypeLibImportClass attribute.
273         * Marshal.cs: Removed MarshalAs attribute from parameter to fix
274         API compatibility with MS.NET.
275         * TypeLibImportClassAttribute.cs: Added.
276
277 2005-07-06  Zoltan Varga  <vargaz@freemail.hu>
278
279         * GCHandle.cs: Add 2.0 FromIntPtr/ToIntPtr methods.
280
281 2005-06-08  Sebastien Pouliot  <sebastien@ximian.com>
282
283         * RuntimeEnvironment.cs: I get better results when calling Demand.
284
285 2005-06-07  Sebastien Pouliot  <sebastien@ximian.com>
286
287         * RuntimeEnvironment.cs: Implemented TODO. Added security for CAS.
288
289 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
290
291         * _Exception.cs: That one wasn't backported to 1.1 SP1 by MS. This
292         should fix a lot of extra reported in the API status pages.
293
294 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
295
296         * Marshal.cs: Add some missing 2.0 attributes.
297
298 2005-05-15  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
299
300         * _Attribute.cs
301         * _ConstructorInfo.cs
302         * _EventInfo.cs
303         * _Exception.cs
304         * _FieldInfo.cs
305         * _MemberInfo.cs
306         * _MethodBase.cs
307         * _MethodInfo.cs
308         * _PropertyInfo.cs
309         * _Type.cs: Chance to .Net 1.1
310         * _Activator.cs
311         * _Assembly.cs
312         * _AssemblyBuilder.cs
313         * _AssemblyName.cs
314         * _ConstructorBuilder.cs
315         * _CustomAttributeBuilder.cs
316         * _EnumBuilder.cs
317         * _EventBuilder.cs
318         * _FieldBuilder.cs
319         * _ILGenerator.cs
320         * _LocalBuilder.cs
321         * _MethodBuilder.cs
322         * _MethodRental.cs
323         * _Module.cs
324         * _ModuleBuilder.cs
325         * _ParameterBuilder.cs
326         * _ParameterInfo.cs
327         * _PropertyBuilder.cs
328         * _SignatureHelper.cs
329         * _Thread.cs
330         * _TypeBuilder.cs: Added
331
332 2005-04-22  Sebastien Pouliot  <sebastien@ximian.com>
333
334         * _Attribute.cs: New. Interface for attributes in 2.0.
335
336 2005-04-13  Marek Safar  <marek.safar@seznam.cz>
337
338         * DefaultCharSetAttribute.cs: Removed useless using.
339
340 2005-03-31  Alp Toker  <alp@atoker.com>
341
342         * GCHandle.cs: Clearer ArgumentException text in the case of a
343         null-valued IntPtr argument.
344
345 2005-03-04  Kazuki Oikawa  <kazuki@panicode.com>
346
347         * _Exception.cs
348         * BIND_OPTS.cs
349         * BINDPTR.cs
350         * CALLCONV.cs
351         * ComDefaultInterfaceAttribute.cs
352         * ComObjectInUseException.cs
353         * ComSourceInterfacesAttribute.cs
354         * CONNECTDATA.cs
355         * CriticalHandle.cs
356         * DefaultCharSetAttribute.cs
357         * DESCKIND.cs
358         * DISPPARAMS.cs
359         * ELEMDESC.cs
360         * EXCEPINFO.cs
361         * ExposeAsClassToComAttribute.cs
362         * FILETIME.cs
363         * FUNCDESC.cs
364         * FUNCFLAGS.cs
365         * FUNCKIND.cs
366         * GCHandle.cs
367         * ICustomAdapter.cs
368         * IDLDESC.cs
369         * IDLFLAG.cs
370         * IMPLTYPEFLAGS.cs
371         * INVOKEKIND.cs
372         * ITypeLibConverter.cs
373         * ITypeLibExporterNameProvider.cs
374         * ITypeLibExporterNotifySink.cs
375         * LIBFLAGS.cs
376         * PARAMDESC.cs
377         * PARAMFLAG.cs
378         * PrimaryInteropAssemblyAttribute.cs
379         * STATSTG.cs
380         * SYSKIND.cs
381         * TYPEATTR.cs
382         * TYPEDESC.cs
383         * TYPEFLAGS.cs
384         * TYPEKIND.cs
385         * TYPELIBATTR.cs
386         * TypeLibExporterFlags.cs
387         * TypeLibImporterFlags.cs
388         * UCOMIBindCtx.cs
389         * UCOMIConnectionPoint.cs
390         * UCOMIConnectionPointContainer.cs
391         * UCOMIEnumConnectionPoints.cs
392         * UCOMIEnumConnections.cs
393         * UCOMIEnumMoniker.cs
394         * UCOMIEnumString.cs
395         * UCOMIEnumVARIANT.cs
396         * UCOMIMoniker.cs
397         * UCOMIPersistFile.cs
398         * UCOMIRunningObjectTable.cs
399         * UCOMIStream.cs
400         * UCOMITypeComp.cs
401         * UCOMITypeInfo.cs
402         * UCOMITypeLib.cs
403         * UnmanagedFunctionPointerAttribute.cs
404         * VARDESC.cs
405         * VARFLAGS.cs
406         * VariantWrapper.cs: Added missing attributes.
407
408 2005-03-03  Kazuki Oikawa  <kazuki@panicode.com>
409
410         * _ConstructorInfo.cs
411         * _EventInfo.cs
412         * _FieldInfo.cs
413         * _MemberInfo.cs
414         * _MethodBase.cs
415         * _MethodInfo.cs
416         * _PropertyInfo.cs
417         * _Type.cs
418         * BStrWrapper.cs
419         * ComDefaultInterfaceAttribute.cs
420         * ComObjectInUseException.cs
421         * CriticalHandle.cs
422         * DefaultCharSetAttribute.cs
423         * ExposeAsClassToComAttribute.cs
424         * RegistrationClassContext.cs
425         * RegistrationConnectionType.cs: Add
426
427 2005-02-21  Zoltan Varga  <vargaz@freemail.hu>
428
429         * UnmanagedFunctionPointerAttribute.cs: Add #region directives.
430
431 2005-02-21  Kazuki Oikawa  <kazuki@panicode.com>
432
433         * BIND_OPTS.cs, CONNECTEDATA.cs, DISPPARAMS.cs, ELEMDESC.cs,
434         EXCEPINFO.cs, FILETIME.cs, FUNCDESC.cs, STATSTG.cs, TYPEATTR.cs,
435         TYPELIBATTR.cs, UCOMIBindCtx.cs, UCOMIConnectionPoint.cs,
436         UCOMIEnumConnectionPoints.cs, UCOMIEnumConnections.cs,
437         UCOMIEnumMoniker.cs, UCOMIEnumString.cs, UCOMIEnumVARIANT.cs,
438         UCOMIMoniker.cs, UCOMIPersistFile.cs, UCOMIRunningObjectTable.cs,
439         UCOMIStream.cs, UCOMITypeInfo.cs, UCOMITypeLib.cs, VARDESC.cs:
440         Corrected the order of the fields and the methods.
441
442         * BIND_OPTS.cs, CALLCONV.cs, FILETIME.cs, FUNCDESC.cs, FUNCFLAGS.cs,
443         FUNCKIND.cs, IDLFLAG.cs, IMPLTYPEFLAGS.cs, LIBFLAGS.cs, PARAMFLAG.cs,
444         STATSTG.cs, SYSKIND.cs, TYPEFLAGS.cs, VarEnum.cs, VARFLAGS.cs:
445         Added missing attributes.
446
447 Wed Feb 16 16:20:56 CET 2005 Paolo Molaro <lupus@ximian.com>
448
449         * GCHandle.cs: check the domain of an handle target is correct.
450         Make the unallocated value 0, since that is the default value
451         for valuetypes.
452
453 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
454
455         * TypeLibVarAttribute.cs,
456         * TypeLibTypeAttribute.cs,
457         * ComSourceInterfacesAttribute.cs: Fix AttributeUsage flags.
458
459 Sat Jan 29 12:48:03 CET 2005 Paolo Molaro <lupus@ximian.com>
460
461         * GCHandle.cs: update for runtime changes: the unallocated handle
462         is -1, now.
463
464 2004-11-25  Raja R Harinath  <rharinath@novell.com>
465
466         * UnmanagedType.cs (mono_bootstrap_NativeTypeMax): Rename from
467         __mono_bootstrap_NativeTypeMax.  CSC doesn't like
468         [CLSCompliant(false)] on enum member.
469
470 2004-09-30  Zoltan Varga  <vargaz@freemail.hu>
471
472         * Marshal.cs: Implement GetDelegateForFunctionPointer.
473
474 2004-09-29  Zoltan Varga  <vargaz@freemail.hu>
475
476         * UnmanagedFunctionPointerAttribute.cs: New file.
477
478         * Marshal.cs: Make GetFunctionPointerForDelegate icall private.
479
480         * MarshalAsAttribute.cs: Add 2.0 IidParamIndex field.
481
482 2004-09-28  Zoltan Varga  <vargaz@freemail.hu>
483
484         * Marshal.cs: Add some ReliabilityContractAttributes.
485         
486         * Marshal.cs (GetFunctionPointerForDelegate): Implement.
487
488         * Marshal.cs: Add stubs for missing 2.0 methods.
489
490 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
491
492         * DllImportAttribute.cs: Reorder fields and mark this class as visible
493         to the runtime.
494
495 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
496
497         * Marshal.cs: Class is static in NET_2_0.
498
499 2004-07-29  Lluis Sanchez Gual  <lluis@novell.com>
500
501         * RuntimeEnvironment.cs: Implemented SystemConfigurationFile and
502           GetSystemVersion().
503
504 Wed Jul 14 19:28:57 CEST 2004 Paolo Molaro <lupus@ximian.com>
505
506         * GCHandle.cs: throw exception if the result from AddrOfPinnedObject()
507         is -1 (special value returned by the runtime).
508
509 2004-07-07  Sebastien Pouliot  <sebastien@ximian.com>
510
511         * _Exception.cs: New interface in Fx 2.0 to preserve member's order
512         for COM interop.
513
514 2004-06-22  Raja R Harinath  <rharinath@novell.com>
515
516         Fix bootstrap with mcs 0.31.
517         * UnmanagedType.cs (UnmanagedType.__mono_bootstrap_NativeTypeMax): 
518         New bootstrap-only constant.
519
520 2004-06-18  Raja R Harinath  <rharinath@novell.com>
521
522         Fix breaking build (see tests/test-272.cs).  Since corlib is a
523         bootstrap library, we have to keep this fix even if the in-tree
524         mcs compiler is fixed.
525         * UCOMIEnumConnections.cs: Replace '(UnmanagedType) 80' in
526         attribute field initialization with Consts.UnmanagedType_80.
527         * UCOMIEnumMoniker.cs: Likewise.
528         * UCOMIEnumString.cs: Likewise.
529         * UCOMIStream.cs: Likewise.
530         * UCOMITypeInfo.cs: Likewise.
531         * UCOMITypeLib.cs: Likewise.
532
533 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
534
535         * BINDPTR.cs: have layout and charset match MS.NET
536         * CONNECTDATA.cs: have layout and charset match MS.NET
537         * DISPPARAMS.cs: have layout and charset match MS.NET
538         * ELEMDESC.cs: have layout and charset match MS.NET
539         * EXCEPINFO.cs: have layout and charset match MS.NET
540         * IDLDESC.cs: have layout and charset match MS.NET
541         * PARAMDESC.cs: have layout and charset match MS.NET
542         * STATSTG.cs: have layout and charset match MS.NET
543         * TYPEATTR.cs: have layout and charset match MS.NET
544         * TYPEDESC.cs: have layout and charset match MS.NET
545         * TYPELIBATTR.cs: have layout and charset match MS.NET
546         * VARDESC.cs: have layout and charset match MS.NET
547
548 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
549
550         * ArrayWithOffset.cs: fixed GetOffset to return int instead of
551         object
552         * CONNECTDATA.cs: added missing MarshalAs attribute
553         * EXCEPINFO.cs: added missing MarshalAs attributes
554         * ITypeLibConverter.cs: added missing MarshalAs attributes
555         * ITypeLibImporterNotifySink.cs: added missing MarshalAs attributes
556         * Marshal.cs: added missing MarshalAs attributues, and missing
557         Out attributes
558         * TypeLibConverter.cs: added missing MarshalAs attributes
559         * UCOMIBindCtx.cs: added missing MarshalAs attributes
560         * UCOMIConnectionPoint.cs: added missing MarshalAs attributes
561         * UCOMIEnumConnectionPoints.cs: added missing MarshalAs attributes
562         * UCOMIEnumConnections.cs: added missing PreserveSig attributes,
563         added missing MarshalAs attributes
564         * UCOMIEnumMoniker.cs: added missing PreserveSig attributes,
565         added missing MarshalAs attributes
566         * UCOMIEnumString.cs: added missing PreserveSig attributes,
567         added missing MarshalAs attributes
568         * UCOMIMoniker.cs: added missing MarshalAs attributes
569         * UCOMIPersistFile.cs: added missing PreserveSig attribute,
570         added missing MarshalAs attributes
571         * UCOMIRunningObjectTable.cs: added missing MarshalAs attributes
572         * UCOMIStream.cs: added missing MarshalAs attributes
573         * UCOMITypeComp.cs: added missing MarshalAs attributes
574         * UCOMITypeInfo.cs: added missing MarshalAs attributes
575         * UCOMITypeLib.cs: added missing PreserveSig attributes, added
576         missing MarshalAs attributes
577
578 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
579
580         * MarshalDirectiveException.cs: marked serializable to match MS.NET
581         * SafeArrayRankMismatchException.cs: marked serializable to match
582         MS.NET
583         * SafeArrayTypeMismatchException.cs: marked serializable to match
584         MS.NET
585
586 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
587
588         * InvalidComObjectException.cs: marked serializable to match MS.NET
589         * InvalidOleVarianTypeException.cs: marked serializable to match
590         MS.NET
591
592 2004-06-17  Gert Driesen <drieseng@users.sourceforge.net>
593
594         * BestFitMappingAttribute.cs: removed serializable attribute
595         to match MS.NET
596
597 2004-05-30  Gert Driesen (drieseng@users.sourceforge.net)
598
599         * SetWin32ContextInIDispatchAttribute.cs: only build
600         for NET_2_0 profile
601         * VariantWrapper.cs: only build for NET_2_0 profile
602
603 2004-05-29  Gert Driesen (drieseng@users.sourceforge.net)
604
605         * SetWin32ContextInIDispatchAttribute.cs: added
606         * VariantWrapper.cs: added
607
608 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
609
610         * AutomationProxyAttribute.cs
611         * BestFitMappingAttribute.cs
612         * ClassInterfaceAttribute.cs
613         * CoClassAttribute.cs
614         * ComAliasNameAttribute.cs
615         * ComCompatibleVersionAttribute.cs
616         * ComConversionLossAttribute.cs
617         * ComEventInterfaceAttribute.cs
618         * ComImportAttribute.cs
619         * ComRegisterFunctionAttribute.cs
620         * ComSourceInterfaceAttribute.cs
621         * ComUnregisterFunctionAttribute.cs
622         * Comvisible.cs
623         * DispIdAttribute.cs
624         * DllImportAttribute.cs
625         * FieldOffsetAttribute.cs
626         * GuidAttribute.cs
627         * IDispatchImplAttribute.cs
628         * ImportedFromTypeLibAttribute.cs
629         * InAttribute.cs
630         * InterfaceTypeAttribute.cs
631         * LCIDConversionAttribute.cs
632         * MarshalAsAttribute.cs
633         * OptionalAttribute.cs
634         * OutAttribute.cs
635         * PreserveSigAttribute.cs
636         * PrimaryInteropAssemblyAttribute.cs
637         * ProgIdAttribute.cs
638         * StructLayoutAttribute.cs
639         * TypeLibFuncAttribute.Cs
640         * TypeLibTypeAttribute.cs
641         * TypeLibVarAttribute.cs
642         * TypeLibVersionAttribute.cs now that Inherited is 
643         false by default on AttributeUsageAttribute (as it 
644         should be) we need to explicitly set Inherited to 
645         false for those attributes should where it should be
646         false.
647
648 2004-05-06  Mike Shaver  <shaver@off.net>
649         * Marshal.cs: Implement StringToCoTaskMem{Ansi,Uni}
650
651 2004-05-05  Zoltan Varga  <vargaz@freemail.hu>
652
653         * Marshal.cs: Applied patch from vladimir@pobox.com (Vladimir Vukicevic). Implement UnsafeAddrOfPinnedArrayElement.
654
655 2004-01-30  Zoltan Varga  <vargaz@freemail.hu>
656
657         * Marshal.cs: Implement AllocCoTaskMem and FreeCoTaskMem.
658
659 2003-11-26  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
660
661         * DispatchWrapper.cs: Added and implemented
662         * ErrorWrapper.cs: Fixed bug
663         * Marshal.cs: Added missing members
664
665 2003-11-18  Jackson Harper <jackson@ximian.com>
666
667         * CurrencyWrapper.cs: Fix file name.
668         
669 2003-11-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
670
671         * BestFitMappingAttribute.cs: Signature fix
672         * Marshal.cs: Add attribute, fix signatures
673         * MarshalAsAttribute.cs: Add head, add entry
674         * DllImportAttribute.cs: Added v1.1 entries
675         * TypeLibConverter.cs: Added, stubbed
676         * RegistrationServices.cs: Added, stubbed
677         * ExtensibleClassFactory.cs: Added, stubbed
678         * ErrorWrapper.cs: Added, implemented
679         * CurrencyWrapper.cs: Added, implemented
680
681 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
682
683         * IRegistrationServices.cs:
684         * ITypeLibConverter.cs:
685         * ITypeLibExporterNameProvider.cs:
686         * ITypeLibExporterNotifySink.cs:
687         * ITypeLibImporterNotifySink.cs: Added missing attribute
688         * UCOMIBindCtx.cs: Added missing attribute, fixed in attribute
689         * UCOMIConnectionPoint.cs:
690         * UCOMIConnectionPointContainer.cs:
691         * UCOMIEnumConnectionPoints.cs:
692         * UCOMIEnumConnections.cs:
693         * UCOMIEnumMoniker.cs:
694         * UCOMIEnumString.cs:
695         * UCOMIEnumVARIANT.cs:
696         * UCOMIMoniker.cs:
697         * UCOMIPersistFile.cs:
698         * UCOMIRunningObjectTable.cs:
699         * UCOMIStream.cs:
700         * UCOMITypeComp.cs:
701         * UCOMITypeInfo.cs:
702         * UCOMITypeLib.cs: Added missing attribute
703
704 2003-08-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
705
706         * UCOMIBindCtx.cs: Added and implemented
707         * UCOMIConnectionPoint.cs: Added and implemented
708         * UCOMIConnectionPointContainer.cs: Added and implemented
709         * UCOMIEnumConnectionPoints.cs: Added and implemented
710         * UCOMIEnumConnections.cs: Added and implemented
711         * UCOMIEnumMoniker.cs: Added and implemented
712         * UCOMIEnumString.cs: Added and implemented
713         * UCOMIEnumVARIANT.cs: Added and implemented
714         * UCOMIMoniker.cs: Added and implemented
715         * UCOMIPersistFile.cs: Added and implemented
716         * UCOMIRunningObjectTable.cs: Added and implemented
717         * UCOMIStream.cs: Added and implemented
718
719         * UCOMTypeComp.cs: renamed
720         * UCOMTypeInfo.cs: renamed
721         * UCOMTypeLib.cs: renamed
722
723         * ITypeLibConverter.cs: Fixed interface signature
724
725         * ComSourceInterfacesAttribute.cs: Added and implemented
726         * IDispatchImplAttribute.cs: Added and implemented
727         * InvalidComObjectException.cs: Added and implemented
728         * InvalidOleVariantTypeException.cs: Added and implemented
729         * MarshalDirectiveException.cs: Added and implemented
730         * SafeArrayRankMismatchException.cs: Added and implemented
731         * SafeArrayTypeMismatchException.cs: Added and implemented
732         * SEHException.cs: Added attribute
733         * UnknownWrapper.cs: Added and implemented
734
735         * BIND_OPTS.cs:
736         * CONNECTDATA.cs:
737         * ELEMDESC.cs:
738         * FILETIME.cs:
739         * FUNCDESC.cs:
740         * IDLDESC.cs:
741         * PARAMDESC.cs:
742         * STATSTG.cs:
743         * TYPEATTR.cs:
744         * TYPEDESC.cs:
745         * TYPELIBATTR.cs:
746         * VARDESC.cs: Added and implemented
747
748         * CALLCONV.cs:
749         * FUNCFLAGS.cs:
750         * FUNCKIND.cs:
751         * IDispatchImplType.cs:
752         * IDLFLAG.cs:
753         * IMPLTYPEFLAGS.cs:
754         * LIBFLAGS.cs:
755         * PARAMFLAG.cs:
756         * SYSKIND.cs:
757         * TYPEFLAGS.cs: 
758         * TypeLibImporterFlags.cs:
759         * VARFLAGS.cs: Added and implemented
760
761 2003-07-12  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
762
763         * ComCompatibleVersionAttribute.cs: Added and implemented
764         * TypeLibVersionAttribute.cs: Added and implemented
765
766 Wed Jun 18 12:49:54 CEST 2003 Paolo Molaro <lupus@ximian.com>
767
768         * Marshal.cs: implemented Prelink with icalls.
769
770 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
771
772         * RuntimeEnvironment.cs: New file. Stubbed by Dominik Fretz
773         (roboto@gmx.net).
774
775 2003-03-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
776
777         * ExternalException.cs: doesn't need a field to keep the result code.
778         * SEHException.cs: implemented.
779
780 2003-03-03  Tim Coleman <tim@timcoleman.com>
781         * HandleRef.cs: Add this struct
782
783 2003-01-05  Sebastien Pouliot <spouliot@videotron.ca>
784
785         * COMException.cs: New. Minimal (incomplete - i'm not using COM)
786         implementation because this is thrown when dealing with Software 
787         Publisher Certificates (SPC) in X509Certificate.
788
789 2002-08-22  Nick Drochak  <ndrochak@gol.com>
790
791         * OutAttribute.cs: TypeID isn't overriden from Attribute here.
792         * PInvokeMap.cs: Non-existent enum.  Must be from beta days.
793
794 2002-06-24  root  <dietmar@ximian.com>
795
796         * Marshal.cs: impl. Copy()
797
798 Fri Jun 14 16:18:50 CEST 2002 Paolo Molaro <lupus@ximian.com>
799
800         * UnmanagedType.cs, Marshal.cs: minor fixes.
801
802 Wed Jun 12 16:32:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
803
804         * Marshal.c: stubbed out all the methods and filled in some
805         implementation.
806         * BINDPTR.cs, ComMemberType.cs, DESCKIND.cs, DISPPARAMS.cs,
807         EXCEPINFO.cs, INVOKEKIND.cs, TYPEKIND.cs, UCOMTypeInfo.cs,
808         UCOMTypeLib.cs: enums, interfaces and structs needed in Marshal class.
809
810 Tue Jun 4 18:05:30 CEST 2002 Paolo Molaro <lupus@ximian.com>
811
812         * GCHandle.cs: changed to fit spec and implementation needs.
813
814 Tue May 14 16:35:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
815
816         * CharSet.cs: added missing None enum item.
817
818 2002-04-26  Joe Shaw  <joe@ximian.com>
819
820         * Marshal.cs (StructureToPtr): stub this out.
821
822 2002-04-23  Joe Shaw  <joe@ximian.com>
823
824         * Marshal.cs: Stub out a few functions to get gtk# to build.
825
826 2002-04-22  Duncan Mak  <duncan@ximian.com>
827
828         * ImporterEventKind.cs: 
829         * TypeLibFuncFlags.cs:
830         * TypeLibTypeFlags.cs:
831         * TypeLibVarFlags.cs: Fixed various typos and added missing elements.
832
833         * ComConventionLossAttribute.cs: Removed, there's a typo.
834         * ComConversionLossAttribute.cs: Same attribute, slight change of name.
835
836         * PreserveSigAttribute.cs:
837         * ImportedFromTypeLibAttribute.cs: Added missing AttributeUsage
838         attribute.
839
840         * TypeLibFuncAttribute.cs:
841         * TypeLibTypeAttribute.cs:
842         * TypeLibVarAttribute.cs: Added missing constructors. 
843         
844         
845 2002-04-22  Duncan Mak  <duncan@ximian.com>
846
847         * AutomationProxyAttribute.cs: 
848         * CoClassAttribute.cs: 
849         * ComAliasNameAttribute.cs: 
850         * ComConventionLossAttribute.cs: 
851         * ComEventInterfaceAttribute.cs: 
852         * ComImportAttribute.cs: 
853         * ComRegisterFunctionAttribute.cs: 
854         * ComUnregisterFunctionAttribute.cs: 
855         * DispIdAttribute.cs: 
856         * ImportedFromTypeLibAttribute.cs: 
857         * LCIDConversionAttribute.cs: 
858         * PreserveSigAttribute.cs: 
859         * PrimaryInteropAssemblyAttribute.cs: 
860         * ProgIdAttribute.cs: 
861         * TypeLibFuncAttribute.cs: 
862         * TypeLibFuncFlags.cs: 
863         * TypeLibTypeAttribute.cs: 
864         * TypeLibTypeFlags.cs: 
865         * TypeLibVarAttribute.cs: 
866         * TypeLibVarFlags.cs:  Added to CVS.
867
868 2002-04-08  Nick Drochak  <ndrochak@gol.com>
869
870         * Marshal.cs: Make class public.
871         * ComVisible.cs: New File.
872
873 2002-03-24  Nick Drochak  <ndrochak@gol.com>
874
875         * ClassInterfaceAttribute.cs:
876         * ClassInterfaceType.cs: New Files.
877
878 2002-02-27  Duncan Mak  <duncan@ximian.com>
879
880         * ExporterEventKind.cs:
881         * ITypeLibConverter.cs:
882         * ITypeLibImporterNotifySink.cs: Added to CVS for Kevin Winchester <kwin@ns.sympatico.ca>.
883
884 2002-02-26  Duncan Mak  <duncan@ximian.com>
885
886         * ComInterfaceType.cs: Added to CVS.
887
888         * AssemblyRegistrationFlags.cs:
889         * GuidAttribute.cs:
890         * ICustomAdapter.cs:
891         * ICustomFactory.cs:
892         * ICustomMarshaler.cs: 
893         * IRegistrationServices.cs:
894         * ITypeLibExporterNameProvider.cs:
895         * ITypeLibImporterNotifySink.cs:
896         * InterfaceTypeAttribute.cs:
897         * TypeLibExporterFlags.cs: Committed for Kevin Winchester <kwin@ns.sympatico.ca>.
898         
899         * GCHandle.cs: Added to CVS. Patch from Ajay kumar Dwivedi.
900
901         * GCHandleType.cs: Committed patch from Ajay.
902
903         * ImporterEventKind.cs: Added to CVS.
904
905 2002-01-24  Miguel de Icaza  <miguel@ximian.com>
906
907         * StructLayoutAttribute.cs: Flag attribute as targetting structs
908         or classes. 
909         
910         * InAttribute.cs: Flag attribute as targettting a paramter
911
912         * OutAttribute.cs: ditto.
913         
914         * DllImportAttribute.cs: Flag attribute as targetting methods.
915         
916         * MarshalAsAttribute.cs: Flag attribute as targetting fields,
917         parameters and returnvalues.
918
919 2002-01-23  Dick Porter  <dick@ximian.com>
920
921         * Marshal.cs: Added GetLastWin32Error()
922
923         * ExternalException.cs: Implemented
924
925 2002-01-17  Miguel de Icaza  <miguel@ximian.com>
926
927         * ExternalException.cs: Add ExternalException.
928
929 2002-01-05  Ravi Pratap  <ravi@ximian.com>
930
931         * OutAttribute.cs : Decorate with MonoTODO.
932         
933 Thu Dec 20 15:46:31 CET 2001 Paolo Molaro <lupus@ximian.com>
934
935         * FieldOffsetAttribute.cs, InAttribute.cs, MarshalAsAttribute.cs,
936         OptionalAttribute.cs, StructLayoutAttribute.cs, VarEnum.cs:
937         more stuff needed by the compiler.
938
939 Thu Dec 13 20:22:18 CET 2001 Paolo Molaro <lupus@ximian.com>
940
941         * DllImportAttribute.cs: added.
942         * MethodImplOptions.cs: removed: this is already in CompilerServices.
943
944 Wed Nov 14 17:02:57 CET 2001 Paolo Molaro <lupus@ximian.com>
945
946         * CallingConvention.cs: add missing Winapi.
947
948 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
949
950         * OutAttribute.cs: New file.
951
952 2001-07-18  Michael Lambert <michaellambert@email.com>
953
954         * CallingConvention.cs.cs, CharSet.cs, GCHandleType.cs, LayoutKind.cs: Add.