On Tuesday 11 June 2024 09:25:36 LIU Hao wrote:
> 在 2024-06-11 03:31, Pali Rohár 写道:
> > Any opinion on this? Because currently import libs for msvcr80(d)
> > contains symbols which refers to non-existent symbols in DLL.
> > 
> > I think that import library must not provide functions (or imp symbols)
> > which refers to non-existent DLL symbols.
> 
> I think this complicates things and adds too little value.

It is just adding a new macro FASTCALL_DECORATED_EXPORT. If the macro is
a complication then the macro can be easily avoided. It is possible to
do this change just by modifying affected def files, without any other
change. I can do that.

> These are specific to MSVCR*, and do not exist in UCRT any more. And we do
> not provide prototypes for them; whoever declares these functions will have
> to bear their own risk.

Yes, that it truth. It is only specific for msvcr* and those functions
do not have prototypes.

But I still think that it is a bug if gcc/ld can produces "broken"
executable just because msvcr* import library contains incorrect
symbols. And it can be simple avoided just by modifying appropriate
*.def.in files. No need to update headers or something other.

I think that import library for libmsvcrXYZ.a should provide only those
symbols which are available in msvcrXYZ.dll. Not more.


_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to