Project

General

Profile

Bug #21328

Updated by nobu (Nobuyoshi Nakada) 2 days ago

We are facing an issue that starts in 05/03/2025 

 We have an Azure Devops Pipeline that build and test a project, but in the test step we have the following error: 
 ``` 
 Gem::Ext::BuildError: ERROR: Failed to build gem native extension. 

 C:/hostedtoolcache/windows/Ruby/3.3.8/x64/lib/ruby/gems/3.3.0/gems/ffi-1.16.3/ext/ffi_c 


 '/c/hostedtoolcache/windows/Ruby/3.3.8/x64/lib/ruby/gems/3.3.0/gems/ffi-1.16.3/ext/ffi_c/libffi-x64-mingw-ucrt' 
 2025-05-08T20:17:16.1292182Z              compiling AbstractMemory.c 
 2025-05-08T20:17:16.1293918Z              AbstractMemory.c: In function 'rbffi_AbstractMemory_Init': 
 2025-05-08T20:17:16.1379827Z AbstractMemory.c(816,49): error G9F317667: passing argument 3 of 'rb_define_method' from [C:\Users\VssAdministrator\.nuget\packages\project.msbuild.sdk\8.0.10-platform-debuggi0004\build\Chef\ChefDependencies.proj] [D:\a\1\s\Tests\ChefUnitTests\ChefUnitTests.csproj] 
 2025-05-08T20:17:16.1382541Z              incompatible pointer type [-Wincompatible-pointer-types] 
 2025-05-08T20:17:16.1384491Z                816 |       rb_define_method(classMemory, "put_" #type, memory_put_##type, 2); \ 
 2025-05-08T20:17:16.1386316Z                    |                                                   ^~~~~~~~~~~ 
 2025-05-08T20:17:16.1388056Z                    |                                                   | 
 2025-05-08T20:17:16.1389784Z              |                                                   VALUE (*)(VALUE,    VALUE, 
 2025-05-08T20:17:16.1391627Z              VALUE) {aka long long unsigned int (*)(long long unsigned int,    long long 
 2025-05-08T20:17:16.1393395Z              unsigned int,    long long unsigned int)} 
 2025-05-08T20:17:16.1395349Z              AbstractMemory.c:833:5: note: in expansion of macro 'INT' 
 2025-05-08T20:17:16.1397142Z                833 |       INT(int8); 
 2025-05-08T20:17:16.1398853Z                    |       ^~~ 
 2025-05-08T20:17:16.1400582Z              In file included from 
 2025-05-08T20:17:16.1402347Z              C:/hostedtoolcache/windows/Ruby/3.3.8/x64/include/ruby-3.3.0/ruby/internal/anyargs.h:78, 
 2025-05-08T20:17:16.1404181Z              from 
 2025-05-08T20:17:16.1406077Z              C:/hostedtoolcache/windows/Ruby/3.3.8/x64/include/ruby-3.3.0/ruby/ruby.h:27, 
 2025-05-08T20:17:16.1407838Z              from 
 2025-05-08T20:17:16.1409590Z              C:/hostedtoolcache/windows/Ruby/3.3.8/x64/include/ruby-3.3.0/ruby.h:38, 
 2025-05-08T20:17:16.1411368Z                               from AbstractMemory.c:40: 
 2025-05-08T20:17:16.1413229Z              C:/hostedtoolcache/windows/Ruby/3.3.8/x64/include/ruby-3.3.0/ruby/internal/method.h:99:61: 
 2025-05-08T20:17:16.1415037Z              note: expected 'VALUE (*)(void)' {aka 'long long unsigned int (*)(void)'} but 
 2025-05-08T20:17:16.1417112Z              argument is of type 'VALUE (*)(VALUE,    VALUE,    VALUE)' {aka 'long long unsigned 
 2025-05-08T20:17:16.1419032Z              int (*)(long long unsigned int,    long long unsigned int,    long long unsigned 
 2025-05-08T20:17:16.1420785Z              int)'} 
 2025-05-08T20:17:16.1422532Z              99 | void rb_define_method(VALUE klass, const char *mid, VALUE 
 2025-05-08T20:17:16.1424350Z              (*func)(ANYARGS), int arity); 
 2025-05-08T20:17:16.1427260Z              |                                                     
 2025-05-08T20:17:16.1429021Z              ~~~~~~~~^~~~~~~~~~~~~~ 
 2025-05-08T20:17:16.1430845Z              AbstractMemory.c:96:1: note: 'memory_put_int8' declared here 
 2025-05-08T20:17:16.1432652Z                 96 | memory_put_##name(VALUE self, VALUE offset, VALUE value) \ 
 2025-05-08T20:17:16.1434412Z                    | ^~~~~~~~~~~ 
 2025-05-08T20:17:16.1436168Z              AbstractMemory.c:259:1: note: in expansion of macro 'NUM_OP' 
 2025-05-08T20:17:16.1438040Z                259 | NUM_OP(int8, int8_t, NUM2INT, INT2NUM, NOSWAP); 
 2025-05-08T20:17:16.1439757Z                    | ^~~~~~ 
 2025-05-08T20:17:16.1446346Z AbstractMemory.c(817,49): error G9F317667: passing argument 3 of 'rb_define_method' from [C:\Users\VssAdministrator\.nuget\packages\project.msbuild.sdk\8.0.10-platform-debuggi0004\build\Chef\ChefDependencies.proj] [D:\a\1\s\Tests\ChefUnitTests\ChefUnitTests.csproj] 
 2025-05-08T20:17:16.1448813Z              incompatible pointer type [-Wincompatible-pointer-types] 
 2025-05-08T20:17:16.1450695Z                817 |       rb_define_method(classMemory, "get_" #type, memory_get_##type, 1); \ 
 2025-05-08T20:17:16.1452471Z                    |                                                   ^~~~~~~~~~~ 
 2025-05-08T20:17:16.1454208Z                    |                                                   | 
 2025-05-08T20:17:16.1455919Z              |                                                   VALUE (*)(VALUE,    VALUE) 
 2025-05-08T20:17:16.1457703Z              {aka long long unsigned int (*)(long long unsigned int,    long long unsigned 
 2025-05-08T20:17:16.1459434Z              int)} 
 2025-05-08T20:17:16.1461252Z              AbstractMemory.c:833:5: note: in expansion of macro 'INT' 
 2025-05-08T20:17:16.1463024Z                833 |       INT(int8); 
 2025-05-08T20:17:16.1464707Z                    |       ^~~ 
 ``` 

 


 Any ideas or how can we fix that?  

Back