nanmiao11 has quit [Remote host closed the connection]
hkaiser has quit [Quit: bye]
Yorlik has quit [Ping timeout: 256 seconds]
kale[m] has quit [Ping timeout: 244 seconds]
kale[m] has joined #ste||ar
kale[m] has quit [Ping timeout: 256 seconds]
kale[m] has joined #ste||ar
kale[m] has quit [Ping timeout: 260 seconds]
kale[m] has joined #ste||ar
bita_ has quit [Ping timeout: 256 seconds]
kale[m] has quit [Ping timeout: 240 seconds]
kale[m] has joined #ste||ar
kale[m] has quit [Read error: Connection reset by peer]
kale[m] has joined #ste||ar
kale[m] has quit [Ping timeout: 264 seconds]
kale[m] has joined #ste||ar
kale[m] has quit [Ping timeout: 246 seconds]
kale[m] has joined #ste||ar
Yorlik has joined #ste||ar
kale[m] has quit [Ping timeout: 260 seconds]
kale[m] has joined #ste||ar
kale[m] has quit [Ping timeout: 256 seconds]
kale[m] has joined #ste||ar
nikunj97 has joined #ste||ar
hkaiser has joined #ste||ar
kale[m] has quit [Ping timeout: 256 seconds]
kale[m] has joined #ste||ar
nanmiao11 has joined #ste||ar
ben[m]4 has joined #ste||ar
bita_ has joined #ste||ar
Nikunj__ has joined #ste||ar
nikunj97 has quit [Ping timeout: 258 seconds]
Nikunj__ has quit [Ping timeout: 240 seconds]
nikunj97 has joined #ste||ar
bita_ has quit [Ping timeout: 256 seconds]
kale[m] has quit [Ping timeout: 264 seconds]
kale[m] has joined #ste||ar
<Yorlik>
Now I started using Macros for replacing some inheritance which posed a problem and I'm getting this: "fatal error C1001: Internal compiler error."
<Yorlik>
hkaiser: Did you ever run into ICEs (MSVC) when doing Macros?
<zao>
Well done!
<Yorlik>
It sucks big time tbh.
<zao>
With fancypants C++, half the things you do tends to ICE the compiler, particularly if you emit ill-formed code.
<Yorlik>
I am using Macros to create template instantiations be redefining them and re-including a header without header guard.
<zao>
Halfway to Boost.Preprocessor then :)
<Yorlik>
The funny thing is, that intellisense is all happy and shows my Macros are correct.
<Yorlik>
Boost Preprocessor? Is that good?
<Yorlik>
C++ really needs a way to have something like if constexpr for struct members
<zao>
Has some fun things like iterating over PP lists and tuples.
<zao>
The best kind of codegen is a separate program with a ton of printfs :D
<zao>
(only half kidding)
<Yorlik>
I had to refactor my entire way how I am building entities and now after a crap load of work and a constant bad feeling about using Macros now this ...
<Yorlik>
Sometime C++ is just .... dunno ... don't really have words
<zao>
If you preprocess the file and then feed it to the compiler, does it still ICE?
<zao>
Or is it in macro expansion itself?
<Yorlik>
I think the macro logic together with repeated header inclusion is too much for it
<zao>
Are you just iterating or is it recursing?
<Yorlik>
I am defining template specializations like this:
<Yorlik>
And the header is includer after change of the macros
<Yorlik>
So - I am doing this for evcery specialization
<Yorlik>
I used to have inheritance for this, but it caused some unsolvable issues with our Lua Bindiongs
<Yorlik>
So - it's neither iteration, not recursion.
<Yorlik>
Just 1-2-3, but repeating the use of the header.
<Yorlik>
Which obviously has no header guard.
<Yorlik>
After each use of the header all macros are reset - it has an nit and a cleanup sub-header.
<Yorlik>
But it's all sequential.
<K-ballo>
if you are hitting a limit the ICE will go away by reducing the amount of work, should be trivial to test
<K-ballo>
then if you confirm, you can split each instantation into its own TU, which should be an improvement regardless
<Yorlik>
Each instantiation is in it's own header, but maybe I should use cpp files including them..
<Yorlik>
I'll give it a shot. Thanks K-ballo .
<Yorlik>
Not sure how I'd move a template specialization into a separate TU though. After all it lives all in the headers.
<K-ballo>
simply being a template specialization doesn't force it to live in headers, but if yours have to for some extra unmentioned reason then you won't be able to change it
<Yorlik>
I use the macros to define the members present. If I put all this in the source it will be hidden and not be accessible by functions made for certain specializations..
bita_ has joined #ste||ar
bobakk3r has quit [*.net *.split]
bobakk3r has joined #ste||ar
bita_ has quit [*.net *.split]
bita_ has joined #ste||ar
linus2 has quit [*.net *.split]
wash[m] has quit [*.net *.split]
jaafar has quit [*.net *.split]
rajpalsanyam1997 has quit [*.net *.split]
tiagofg[m] has quit [*.net *.split]
mariella[m] has quit [*.net *.split]
carola[m] has quit [*.net *.split]
neill[m] has quit [*.net *.split]
richard[m] has quit [*.net *.split]
tarzeau has quit [*.net *.split]
linus2 has joined #ste||ar
wash[m] has joined #ste||ar
jaafar has joined #ste||ar
rajpalsanyam1997 has joined #ste||ar
carola[m] has joined #ste||ar
mariella[m] has joined #ste||ar
tiagofg[m] has joined #ste||ar
richard[m] has joined #ste||ar
tarzeau has joined #ste||ar
neill[m] has joined #ste||ar
kale[m] has quit [*.net *.split]
klaus[m]1 has quit [*.net *.split]
diehlpk_work has quit [*.net *.split]
jbjnr has quit [*.net *.split]
gdaiss[m] has quit [*.net *.split]
norbert[m] has quit [*.net *.split]
gonidelis[m] has quit [*.net *.split]
parsa has quit [*.net *.split]
kale[m] has joined #ste||ar
diehlpk_work has joined #ste||ar
gdaiss[m] has joined #ste||ar
klaus[m]1 has joined #ste||ar
gonidelis[m] has joined #ste||ar
jbjnr has joined #ste||ar
norbert[m] has joined #ste||ar
parsa has joined #ste||ar
Vir has quit [*.net *.split]
Vir has joined #ste||ar
oleg[m] has quit [Ping timeout: 244 seconds]
ms[m] has quit [Ping timeout: 244 seconds]
kordejong has quit [Ping timeout: 246 seconds]
tiagofg[m] has quit [Ping timeout: 240 seconds]
carola[m] has quit [Ping timeout: 250 seconds]
neill[m] has quit [Ping timeout: 250 seconds]
gretax[m] has quit [Ping timeout: 244 seconds]
nikunj97 has quit [*.net *.split]
ben[m]4 has quit [*.net *.split]
nikunj has quit [*.net *.split]
Vir has quit [*.net *.split]
kale[m] has quit [*.net *.split]
klaus[m]1 has quit [*.net *.split]
diehlpk_work has quit [*.net *.split]
jbjnr has quit [*.net *.split]
gdaiss[m] has quit [*.net *.split]
gonidelis[m] has quit [*.net *.split]
norbert[m] has quit [*.net *.split]
parsa has quit [*.net *.split]
rajpalsanyam1997 has quit [*.net *.split]
mariella[m] has quit [*.net *.split]
richard[m] has quit [*.net *.split]
tarzeau has quit [*.net *.split]
linus2 has quit [*.net *.split]
wash[m] has quit [*.net *.split]
jaafar has quit [*.net *.split]
bita_ has quit [*.net *.split]
bobakk3r has quit [*.net *.split]
alexandros[m] has quit [*.net *.split]
chelsea[m] has quit [*.net *.split]
mdiers[m] has quit [*.net *.split]
smith[m] has quit [*.net *.split]
ralph[m] has quit [*.net *.split]
nanmiao11 has quit [*.net *.split]
heller1 has quit [*.net *.split]
wladimir[m] has quit [*.net *.split]
otto[m] has quit [*.net *.split]
zao has quit [*.net *.split]
diehlpk_mobile[m has quit [*.net *.split]
hkaiser has quit [*.net *.split]
Yorlik has quit [*.net *.split]
K-ballo has quit [*.net *.split]
joe[m] has quit [*.net *.split]
oscar[m] has quit [*.net *.split]
rori has quit [*.net *.split]
jaafar has joined #ste||ar
tarzeau has joined #ste||ar
gonidelis[m] has joined #ste||ar
rajpalsanyam1997 has joined #ste||ar
bita_ has joined #ste||ar
mariella[m] has joined #ste||ar
parsa has joined #ste||ar
Vir has joined #ste||ar
linus2 has joined #ste||ar
jbjnr has joined #ste||ar
klaus[m]1 has joined #ste||ar
richard[m] has joined #ste||ar
kale[m] has joined #ste||ar
bobakk3r has joined #ste||ar
norbert[m] has joined #ste||ar
wash[m] has joined #ste||ar
gdaiss[m] has joined #ste||ar
diehlpk_work has joined #ste||ar
nikunj97 has joined #ste||ar
ben[m]4 has joined #ste||ar
rori has joined #ste||ar
nikunj has joined #ste||ar
joe[m] has joined #ste||ar
alexandros[m] has joined #ste||ar
K-ballo has joined #ste||ar
hkaiser has joined #ste||ar
otto[m] has joined #ste||ar
wladimir[m] has joined #ste||ar
mdiers[m] has joined #ste||ar
smith[m] has joined #ste||ar
oscar[m] has joined #ste||ar
nanmiao11 has joined #ste||ar
Yorlik has joined #ste||ar
heller1 has joined #ste||ar
zao has joined #ste||ar
diehlpk_mobile[m has joined #ste||ar
hkaiser has quit [*.net *.split]
Yorlik has quit [*.net *.split]
K-ballo has quit [*.net *.split]
mariella[m] has quit [Ping timeout: 240 seconds]
joe[m] has quit [Ping timeout: 244 seconds]
oscar[m] has quit [Ping timeout: 244 seconds]
wladimir[m] has quit [Ping timeout: 244 seconds]
Yorlik has joined #ste||ar
hkaiser has joined #ste||ar
K-ballo has joined #ste||ar
alexandros[m] has quit [Ping timeout: 244 seconds]
smith[m] has quit [Ping timeout: 244 seconds]
richard[m] has quit [Ping timeout: 240 seconds]
rori has quit [Ping timeout: 244 seconds]
klaus[m]1 has quit [Ping timeout: 260 seconds]
norbert[m] has quit [Ping timeout: 260 seconds]
rajpalsanyam1997 has quit [Ping timeout: 240 seconds]
heller1 has quit [Ping timeout: 244 seconds]
otto[m] has quit [Ping timeout: 244 seconds]
mdiers[m] has quit [Ping timeout: 244 seconds]
diehlpk_mobile[m has quit [Remote host closed the connection]
jbjnr has quit [Remote host closed the connection]
gdaiss[m] has quit [Remote host closed the connection]
gonidelis[m] has quit [Remote host closed the connection]
ben[m]4 has quit [Remote host closed the connection]