You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Was ultimately able to compile the example under VC140 after fixing the std::size_t issue described by #22 but the tests still failed to compile. The example crashes on std::cout << ctti::nameof<CTTI_STATIC_VALUE(&f)>() << std::endl; with a bad access. It gives some very very weird output:
nt
truct foo
ntfoo::*
class ctti::detail::cstring __cdecl ctti::pretty_function::value<intfoo::* ,pointer-to-member(0x0)>(void) -> member(0x0)
class ctti::detail::cstring __cdecl ctti::pretty_function::value<enum bar_enum,bar_enum::FOO>(void) -> OO
class ctti::detail::cstring __cdecl ctti::pretty_function::type<class std::basic_istream<char,struct std::char_traits<char> >>(void) class ctti::detail::cstring __cdecl ctti::pretty_function::type<class std::basic_ostream<char,struct std::char_traits<char> >>(void) p╙L{≈� Ç╘L{≈� ╪╒L{≈� ╓L{≈� @╓L{≈� x╓L{≈� � � � � � Stack around the variable ' ' was corrupted. The variable ' ' is being used without being initialized. The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.
A cast to a smaller data type has caused a loss of data. If this was intentional, you should mask the source of the cast with the appropriate bitmask. For example:
char c = (i & 0xFF);
Changing the code in this way will not affect the quality of the resulting optimized code.
Stack memory was corrupted
A local variable was used before it was initialized
Stack memory around _alloca was corrupted
Unknown Runtime Check Error
R u n t i m e C h e c k E r r o r .
U n a b l e t o d i s p l a y R T C M e s s a g e . R u n - T i m e C h e c k F a i l u r e # % d - % s Unknown Filename Unknown Module Name Run-Time Check Failure #%d - %s Stack corrupted near unknown variable %.2X Stack area around _alloca memory reserved by this function is corrupted
Data: <
Allocation number within this function:
Size:
Address: 0x Stack area around _alloca memory reserved by this function is corrupted %s%s%p%s%zd%s%d%s
> %s%s%s%s A variable is being used without being initialized. ╚┘L{≈� Φ┘L{≈� ┌L{≈� @┌L{≈� x┌L{≈� Stack pointer corruption Cast to smaller type causing loss of data Stack memory corruption Local variable used before initialization Stack around _alloca corrupted b i n \ a m d 6 4 \ M S P D B 1 4 0 . D L L V C R U N T I M E 1 4 0 D . d l l a p i - m s - w i n - c o r e - r e g i s t r y - l 1 - 1 - 0 . d l l a d v a p i 3 2 . d l l RegOpenKeyExW RegQueryValueExW RegCloseKey S O F T W A R E \ W o w 6 4 3 2 N o d e \ M i c r o s o f t \ V i s u a l S t u d i o \ 1 4 . 0 \ S e t u p \ V C P r o d u c t D i r D L L M S P D B 1 4 0 M S P D B 1 4 0 PDBOpenValidate5 r �M{≈� └�M{≈� ëü╡[ � K ,▀ ,╔ ëü╡[ � x▀ x╔ ö M{≈� PM{≈� �PM{≈� � RSDS╔8à╛+_!NÆaÜêGà3H� C:\code\ctti\build\examples\Debug\ctti-example.pdb # # " ∩�L{≈� ç�L{≈� ��� �p ��� �p �(� �R�p���
R�p�#� ���p��� �p ��� �p �(� �2�p�#� �R�p���
R�p��� �p ���
2�p���
R�p��� �p ��� �p ��� �p �-� �2�p�-� �2�p�#� �r�p�5� ��� �p └ü Ç╠ ≡ú � � � � Στ @ �ñ H ,� ╪ ∙ � �# ╗# �ñ &ñ � Sñ ��� �Bp�P ��� �Bp�P └ü Ç╠ �4� ���
p └ü 0═ `ú � � � � ╝Φ @ âú H � /� ╝� � 9� ¥� âú ûú � ├ú ��� �Bp�P ��� �Bp�P └ü 0═ �#� �r�p�-� �R�p�/� ��� �p�` �'� �┬p�` �#� �Æ�p�#� �Æ�p�#� �R�p�� p�`���
2�p��� �p ��� �p �#� �R�p�
�
p ��� �� �p ���
R�p�"� �2
p���
r�p���
2�p���
2�p���
R�p���
R�p���
2�p���
R�p���
2�p���
R�p���
R�p�#� �2�p�#� �2�p�#� �r�p�'�
r�p└ü x═ ú� �,� �R�p└ü ¿═ Çñ ∙� |3 @4 ��� �Bp�P �'�
R�p└ü ╪═ ÿ� ��� �p �"� �2
p�"� �2
p�"� �2
p�"� �2
p�"� �2
p���
r�p���
R�p���
r�p���
r�p���
2�p���
2�p���
2�p���
R�p���
R�p���
R�p���
R�p���
R�p���
2�p���
2�p�"� �2
p�"� �2
p�"� �2
p�"� �2
p�"� �2
p���
r�p���
r�p���
R�p���
R�p���
R�p���
2�p���
2�p���
2�p��� � �4 �2�` !�� �t� pF ïF αδ ! pF ïF αδ �� B�p�0 !� ⌠� � G 'G ∞ !�� �d 'G AG 0∞ !�� �Σ
AG LG L∞ ! AG LG L∞ ! 'G AG 0∞ ! G 'G ∞ ��� �� !�� �t F 6F ╕∞ ! F 6F ╕∞ ��� �b ��� �b ��� �B ��� �B ��� �b ��� �b ��� �B ��� �B �� �ó ╥ü � äJ ╦K ░ñ ╦K ��� ��å �p I� � �$ �dï �4è ��å �p I� � ��� �< �α�`�P I� └� ! � t:4; �N ÆN ñφ ! �N ÆN ñφ � �d
�T � �R�p ��� �bp�0 �� �ó ╥ü � _M wM ≡ñ wM ��� �2�P �� �ó ╥ü � ═M σM Ñ σM ��� �2�P�j� jd╒���╓�≡
╨�└�p�P�0 I� É� ��� �2
d� �4�P !�� �t
≡Q �R ÿε ! ≡Q �R ÿε � � b � � é � � b � ó ╥ü � �_ Γ_ PÑ Γ_ ��� �2�P��� �é �B �B �� B �
�
┬�p�` ��� �b ��� �B ��� �B ��� �B ��� �B ��� �B ��� �B � � B ��� �b � � B � �
B ��� �é ��� �B ��� �B ��� �b ��� �" � � �� �p ��� �b ��� �B �� �╛ �p � � b �
�
4
2�` !�� �t� �i -i ≡ ! �i -i ≡ �
�
4
2�` !�� �t� pi ìi H≡ ! pi ìi H≡ � � B � at� ��� �≡�╨0�P !�� �Σ�d� �p ╝p î≡ �─� ╝p Zr ñ≡ ! ╝p Zr ñ≡ ! �p ╝p î≡ ��� �L �p I� P� �4N Ék �l ± �dP �l 9l �± �╬ �p I� `� ��� �ï I� @� ��� �ó ��� �B � ��� �Æ�0I� @ ��� �" ��� �" �B ��� �b ��� �B �
� b � � Γ � � Γ � � B � � � � � � � rƒ∩�£τ ì`�≡c� � . � � � ⁿüL{≈� � ì`�≡c� ì`�≡c� ì`�≡c� ì`�≡c� ì`�≡c� ì`�≡c� � � p� ü� └Θ É� *� ╚Θ α� ╩� pΦ ╨� Φ# ÿτ ≡$ '% αΘ @% w% êδ É% ╟% ÿδ α% �& ΦΩ 0& g& δ Ç& ╖& ≡Ω ╨& ' °Ω ' W' αΩ p' º' Çδ └' ≈' xδ �( G( Éδ `( ─( °Θ α( ╗) XΘ * 8* ╪Θ P* ê* Pδ á* ╪* `δ ≡* (+ Ω @+ x+ 0Ω É+ ╚+ �Ω α+ �, (Ω 0, h, Ω Ç, ╕, Hδ ╨, - @δ - X- Xδ p- ¬- ≡Θ └- ·- hδ �. J. pδ `. Ü. ╨δ ░. Ω. ╪δ / 8/ 8Ω P/ ù/ δ ░/ Φ/ @Ω 0 @0 �δ P0 è0 ╚δ á0 ┌0 �Ω ≡0 *1 Ω @1 ∩1 HΩ 2 u2 8τ É2 ß2 @τ 3 23 0τ @3 K4 pΩ É4 ╡4 ÿΘ └4 ▀4 ¿Θ ≡4 ö5 PΩ └5 �6 ╝Ω 06 ╛6 Éτ ≡6 p7 PΘ É7 «7 xτ └7 ╤7 ╪Ω α7 B8 Çτ `8 h8 τ p8 }8 τ Ç8 ┘8 ΦΘ ≡8 I9 δ `9 ¼9 ░δ └9 : └δ : l: ╕δ Ç: │: 8δ └: ≤: (δ ; 3; 0δ @; Ö; �δ ░; < ¿δ < y< áδ É< á< hτ ░< ╔< pτ ╨< ┘< (τ α< -= τ @= ¡= ÇΘ ╨= e? `Θ ╨? =@ êΘ `@ ¬@ ÉΘ └@ VA �τ ÇA ╫A `τ ≡A !B áΘ 0B @B ░Θ PB ╛B ╕Θ αB ║C pΘ ≡C ?D �τ `D qD Pτ ÇD ╪D Hτ ≡D NE êτ pE ₧E Xτ F 6F ╕∞ 6F VF └∞ VF [F ╪∞ pF ïF αδ ïF ßF ⌠δ ßF ±F ∞ G 'G ∞ 'G AG 0∞ AG LG L∞ LG ÿG d∞ ÿG ¥G |∞ ¥G ░G É∞ ░G #H ñ∞ ÉH ╧H ⌠∞ αH �I ∞∞ �I ╠I �φ J �J �φ J :J $φ @J SJ Xφ `J �L ,φ pL àL ⁿ∞ áL «L �φ └L ∙L φ �M �M `φ @M üM �ε áM ∩M Dε �N ÆN ñφ ÆN |O └φ |O ÿO ▄φ pP ₧Q äφ ≡Q �R ÿε �R �R ¼ε �R ¢R ╠ε ≡R \U pε V �W hφ ÇW ΓW ≡φ X ?X ε �Y KY £∩ `Y áY ñ∩ ╨Y ûZ ö∩ ╨Z Z[ î∩ É[ ≥[ $∩ �\ =\ d∩ P\ m\ \∩ Ç\ ░\ |∩ └\ ╒\ ä∩ α\ >] T∩ `] Ä] l∩ á] ╡] t∩ └] ^ 4∩ ^ �_ D∩ `_ δ_ °ε �` ?` ,∩ P` Å` <∩ á` "a Φε Pa áa ≡ε └a ≤a αε b �c ¼∩ └c ╓c ┤∩ αc ⌡c ╝∩ @d àd ─∩ ád ┼d ╠∩ �e íf ⌠∩ �g ag ╘∩ Ég 6h Σ∩ `h vh ∞∩ Çh ≥h �≡ �i -i ≡ -i Ri �≡ Ri ]i 4≡ pi ìi H≡ ìi ▓i X≡ ▓i ╜i p≡ ╨i Θi ä≡ ≡i 5k ╕± Ék �l ± �l 9l �± 9l ]l 0± ]l ±m H± ±m ∙m `± ∙m �n t± �n �n ê± └n ┼o £± �p ╝p î≡ ╝p Zr ñ≡ Zr �t └≡ �t {t ╪≡ {t æt ∞≡ └u ·u ╘± �v w ╠± `w üw α± Éw �{ Σ± ≡{ �| °± 0| _| ≥ p| Ñ| 8≥ └| æ} ≥ ╨} π} �≥ ≡} ï~ ≥ └~ ╬� �≥ Ç ▒Ç (≥ αÇ Æü 0≥ Pô Rô @≥ `ú âú (Θ âú ╥ú 8Θ ≡ú �ñ HΦ �ñ bñ XΦ Çñ úñ ¼Ω ░ñ αñ Pφ ≡ñ �Ñ <ε Ñ @Ñ hε PÑ ìÑ �∩ @·>Ö²� Ét>Ö²� ád>Ö²� Ça>Ö²� └"@Ö²� Pa>Ö²� ╨╖>Ö²� `eߢ²� ░!@Ö²� ╨
?Ö²� áⁿ?Ö²� ≡|AÖ²� Ç?Ö²� ε>Ö²� áδ>Ö²� ≡Θ>Ö²� @b>Ö²� └ç▄¢²� pa>Ö²� s>Ö²� └�?Ö²� ░"@Ö²� ░┐>Ö²� φ>Ö²� ÇΣ>Ö²� α�?Ö²� ≡�}p²� @�}p²� Éñvp²� α[qp²� └�wp²� É;vp²� p4vp²� [qp²� P�qp²� `₧vp²� α\qp²� ≡\qp²� áqp²� └Ewp²� ≡ßqp²� p�qp²� ░�qp²� τpp²� @�rp²� └τpp²� arà²� É�qà²� Ç�qà²� ░yqà²� ░Äqà²� αÄqà²� Åqà²� É�qà²� @ÉS²� �ÉS²� ╨ìÅS²� └nÿS²� £ÿS²� p#òS²� ≡�ÉS²� �ÉS²� �₧ÅS²� âÖS²� pÉS²� └�ÉS²� É�ÉS²� �ÉS²� ░öèS²� 0öèS²� └┤ÅS²� ≡PùÉS²� ░ÉS²� oÅS²� á╩ôS²� ╨öæS²� P<ÄS²� ÇⁿÄS²� @�ÉS²� p�ÉS²� ₧ÅS²� P&� Z.� P!� h'� H/� h"�(� └1�#� %� µ3� � Γ1� ⌠1�
2� 2� :2� P2� f2� Ç2� û2� ¬2� ─2� ╪2� ⌠2� �3� $3� @3� T3� d3� p3� |3� ╥3� ╛3� ¼3� ₧3� Ä3� ╬1� �.� Σ-� ¿-� d-� -� ▐,� è,� L,� �,� ╓+� l+� �+� ╞*� ~*� <*� �*� ·)� ┌)� ÿ)� ║)� h.� á.� ┬.� ┌.� ·.� �/� 0/� ~.� d1� r1� ê1� ö1� ñ1� ┤1� x0� n0� R0� D0� L1� 40� &0� �0� °/� ╓/� ╝/� ¿/� ÿ/� å/� t/� d/� Z/� 01� �1� �1� µ0� ╓0� ╞0� ░0� <0� é0� `0� &�?uncaught_exception@std@@YA_NXZ ═�?good@ios_base@std@@QEBA_NXZ o�?flags@ios_base@std@@QEBAHXZ F�?width@ios_base@std@@QEBA_JXZ E�?width@ios_base@std@@QEAA_J_J@Z µ�?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAAHD@Z Θ�?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QEAA_JPEBD_J@Z ═�?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QEAAXH_N@Z ��?tie@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_ostream@DU?$char_traits@D@std@@@2@XZ Å�?rdbuf@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@XZ i�?fill@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBADXZ <�?widen@?$basic_ios@DU?$char_traits@D@std@@@std@@QEBADD@Z L�?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAXXZ �??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@P6AAEAV01@AEAV01@@Z@Z ��??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@_K@Z i�?put@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@D@Z p�?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV12@XZ ~�?get@?$basic_istream@DU?$char_traits@D@std@@@std@@QEAAHXZ ½�?cin@std@@3V?$basic_istream@DU?$char_traits@D@std@@@1@A ╝�?cout@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A MSVCP140D.dll � __CxxFrameHandler3 ( __telemetry_main_invoke_trigger ) __telemetry_main_return_trigger __C_specific_handler % __std_type_info_destroy_list . __vcrt_GetModuleFileNameW / __vcrt_GetModuleHandleW 1 __vcrt_LoadLibraryExW VCRUNTIME140D.dll 0�strlen � _CrtDbgReport � _CrtDbgReportW ┬�_seh_filter_exe ┼�_set_app_type [ __setusermatherr ╢ _configure_narrow_argv q�_initialize_narrow_environment =�_get_initial_narrow_environment t�_initterm u�_initterm_e O�exit Ω _exit ╩�_set_fmode I __p___argc J __p___argv ñ _cexit ƒ _c_exit ╡�_register_thread_local_exe_atexit_callback ╡ _configthreadlocale ═�_set_new_mode M __p__commode h __stdio_common_vsprintf_s ┴�_seh_filter_dll r�_initialize_onexit_table ┤�_register_onexit_function σ _execute_onexit_table ┬ _crt_atexit ┴ _crt_at_quick_exit J�terminate ¢�_wmakepath_s ╖�_wsplitpath_s c�wcscpy_s ucrtbased.dll }�IsDebuggerPresent _�RaiseException δ�MultiByteToWideChar ��WideCharToMultiByte I�QueryPerformanceCounter ��GetCurrentProcessId �GetCurrentThreadId ∞�GetSystemTimeAsFileTime g�InitializeSListHead ╦�RtlCaptureContext ╥�RtlLookupFunctionEntry ┘�RtlVirtualUnwind ┤�UnhandledExceptionFilter s�SetUnhandledExceptionFilter ╙�GetStartupInfoW ä�IsProcessorFeaturePresent z�GetModuleHandleW c�GetLastError J�HeapAlloc N�HeapFree ╖�GetProcessHeap ╒�VirtualQuery »�FreeLibrary ▒�GetProcAddress ��GetCurrentProcess Æ�TerminateProcess KERNEL32.dll � �
� E t 7 � � 7�L{≈� H�L{≈� � � � Ç � � 0 Ç � � H pa� }� <?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level='asInvoker' uiAccess='false' />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
The text was updated successfully, but these errors were encountered:
Was ultimately able to compile the example under VC140 after fixing the
std::size_t
issue described by #22 but the tests still failed to compile. The example crashes onstd::cout << ctti::nameof<CTTI_STATIC_VALUE(&f)>() << std::endl;
with a bad access. It gives some very very weird output:The text was updated successfully, but these errors were encountered: